diff --git a/.ipynb_checkpoints/Organizacja zajęć-checkpoint.ipynb b/.ipynb_checkpoints/Organizacja zajęć-checkpoint.ipynb index 066dcdb..d75f0c5 100644 --- a/.ipynb_checkpoints/Organizacja zajęć-checkpoint.ipynb +++ b/.ipynb_checkpoints/Organizacja zajęć-checkpoint.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Organizacja zajęć na przedmiocie Systemy Informatyczne (2022 - 2023)" + "# Organizacja zajęć na przedmiocie Systemy Informatyczne Analizy Danych (2023 - 2024)" ] }, { @@ -12,9 +12,12 @@ "metadata": {}, "source": [ "## 1. Informacje o przedmiocie\n", - "Systemy informatyczne to przedmiot prowadzony w formie wykładów i laboratoriów dla studentów III semestru studiów magisterskich na kierunku Analiza i Przetwarzanie Danych. \n", - "Celem przedmiotu jest zaznajomienie studentów z przebiegiem tworzenia systemu informatycznego - od powstania wizji projektu do realizacji działającego prototypu. Cel ten będzie realizowany poprzez kształcenie następujących umiejętności u studentów:\n", + "Systemy informatyczne analizy danych to przedmiot prowadzony w formie wykładów i laboratoriów dla studentów III semestru studiów magisterskich na kierunku Analiza i Przetwarzanie Danych. \n", + "Celem przedmiotu jest zaznajomienie studentów z przebiegiem tworzenia systemu informatycznego z zakresu analizy danych - od powstania wizji projektu do realizacji działającego prototypu. Cel ten będzie realizowany poprzez kształcenie następujących umiejętności u studentów:\n", "\n", + "- metody prototypowania\n", + "- znajomość systemów kontroli wersji\n", + "- stosowanie ciągłej integracji i ciągłej ewalaucji \n", "- rozwój kreatywności w projektowaniu systemu informatycznego\n", "- poznanie charakterystyki innowacyjnego systemu informatycznego\n", "- rozwój umiejętności współpracy w zespole\n", @@ -57,25 +60,24 @@ "source": [ "## 3. Zasady zaliczenia wykładów\n", "\n", - "Wykład może być zaliczony albo na podstawie punktów uzyskanych za rozwiązywanie testów podawanych na wykładzie, albo poprzez egzamin końcowy. \n", - "\n", - "Za prawidłowe odpowiedzi na pytania testowe podawane podczas wykładu studenci otrzymują punkty (1 punkt za prawidłową odpowiedź). Testy rozwiązywane mogą być na dowolnych urządzeniach, które dysponują przeglądarką internetową. System do testów jest osiągalny pod adresem: \n", + "### Testy podczas prowadzenia wykładów \n", + "Podczas wykładów (standardowo w środku i na końcu wykładu) przeprowadzane są testy. Za prawidłowe odpowiedzi na pytania testowe podawane podczas wykładu studenci otrzymują punkty (1 punkt za prawidłową odpowiedź). Testy rozwiązywane mogą być na dowolnych urządzeniach, które dysponują przeglądarką internetową. System do testów jest osiągalny pod adresem: \n", " **cybertest2.wmi.amu.edu.pl** \n", "Logowanie do systemu odbywa się za pomocą standardowych danych dostępowych na WMI. \n", "\n", - "**UWAGA: Rozwiązywanie testów dozwolone jest tylko podczas obecności na wykładzie.**\n", + "**UWAGA: Rozwiązywanie testów dozwolone jest tylko podczas obecności na wykładzie. Rozwiązywanie testów poza wykładem skutkuje koniecznością egzaminu pisemnego.**\n", "\n", - "Wykładowca zobowiązuje się do przeprowadzenia testów z minimum 120 pytaniami podczas całego kursu (standardowo: 5 pytań powtórkowych na początku wykładu i 5 pytań na końcu wykładu). \n", + "Wykładowca zobowiązuje się do przeprowadzenia testów z minimum 120 pytaniami podczas całego kursu. \n", "\n", - "### Zwolnienia z egzaminu na podstawie punktów z wykładu\n", - "Student zwolniony jest z egzaminu z oceną dostateczny plus lub wyższą, wynikającą z punktów zdobytych za rozwiązanie zadań testowych podawanych na wykładach. \n", + "### Egzamin: ustny i pisemny \n", + "Student jest dopuszczony do egzaminu **ustnego**, jeśli zdobędzie co najmniej 70 punktów w ciągu całego kursu. \n", "\n", - "Studenci niespełniający powyższego kryterium zdają egzamin obejmujący materiał przedstawiany na wykładach. Studenci mogą zdawać egzamin również w sytuacji, gdy nie satysfakcjonuje ich ocena uzyskana na podstawie zdobytych punktów.\n", + "Studenci niespełniający powyższego kryterium zdają egzamin **pisemny** obejmujący materiał przedstawiany na wykładach. \n", "\n", - "**Rozwiązywanie testu przez osobę nieobecną na wykładzie jest niezgodne z podanymi zasadami i uniemożliwia tej osobie zwolnienie z egzaminu na podstawie punktów z wykładu.**\n", + "Zdobycie odpowiedniej liczby punktów gwarantuje minimalną ocenę z egzaminu ustnego. \n", "\n", "\n", - "### Skala ocen z wykładu \n", + "### Ocena minimalna z egzaminu na podstawie zdobytych punktów \n", "\n", " \n", " \n", @@ -93,9 +95,13 @@ " \n", " \n", " \n", - " \n", + " \n", " \n", - "
Liczba prawidłowych odpowiedzi Ocena70-793,5
poniżejegzaminponiżejegzamin pisemny
\n" + "\n", + "\n", + "Wykładowca ma prawo podwyższyć ocenę minimalną na podstawie:\n", + " - notatek z wykładów\n", + " - oceny kompetencji studenta podczas egzaminu ustnego. " ] }, { @@ -134,9 +140,6 @@ " \n", " \n", " \n", - " Prezentacja koncepcji30\n", - " \n", - " \n", " Sprinty6 x 10 = 60\n", " \n", " \n", @@ -144,10 +147,10 @@ " \n", " \n", " \n", - " Harmonogram wsteczny (zadanie bonusowe z wykładu nr 13) 20\n", + " Harmonogram wsteczny 30\n", " \n", " \n", - " Suma600+20\n", + " Suma600\n", " \n", "\n", "\n", @@ -201,7 +204,7 @@ " Liczba punktów Ocena\n", " \n", " \n", - " 500-6205\n", + " 500-6005\n", " \n", " \n", " 450-4994,5\n", diff --git a/Demonstracje projektów.ipynb b/Demonstracje projektów.ipynb index 0b15b70..ff01790 100644 --- a/Demonstracje projektów.ipynb +++ b/Demonstracje projektów.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Organizacja demonstracji projektów\n", + "# Organizacja demonstracji projektów w roku akademickim 2022/2023\n", "Informacje dotyczą dmemostracji projektów na zajęciach SYI. " ] }, @@ -114,7 +114,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "Python 3", "language": "python", "name": "python3" }, @@ -128,7 +128,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.12" + "version": "3.8.5" } }, "nbformat": 4, diff --git a/Demonstracje prototypów.ipynb b/Demonstracje prototypów.ipynb deleted file mode 100644 index 2ec84b6..0000000 --- a/Demonstracje prototypów.ipynb +++ /dev/null @@ -1,139 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Organizacja prezentacji koncepcji projektów w dniu 8 listopada\n", - "Informacje dotyczą prezentacji koncepcji projektów. \n", - "Podane poniżej informacje mogą ulec korektom do dnia 7 listopada." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "##### Termin i forma prezentacji\n", - " * Wszystkie prezentacje powinny znaleźć się w odpowiednim folderze na Teamsach w nieprzekraczalnym terminie 6 listopada.\n", - " * Prezentacje będą prowadzone publicznie podczas zajęć przewidzianych na laboratorium w dniu 8 listopada o godz. 17.15. Prezentacje odbędą się w auli C, Szacowany czas na jedną prezentację to 10 minut.\n", - " * Podczas prezentacji wskazana jest obecność \"na scenie\" całej grupy. Nie jest jednak wymagane, aby wypowiadali się wszyscy studenci.\n", - " * Wszystkie prezentacje powinny zostaćprzekazane " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Ocena prezentacji\n", - " * Każda prezentacja, spełniająca podstawowe oczekiwania dot. prezentacji, otrzyma ocenę bazową: 20 punktów. \n", - " * Do oceny bazowej zostaną doliczone punkty bonusowe za prezentacje wyróżnione przez:\n", - " * studentów,\n", - " * prowadzących oraz zaproszonych gości.\n", - " * Punkty bonusowe przyznane przez obie grupy odbiorców są sumowane.\n", - "\n", - " * Wyróżnienia będą przyznawane na podstawie wyników ankiet. W ramach ankiety każdy student i każdy prowadzący (gość) będzie poproszony o wskazanie pięciu najlepszych prezentacji. Studenci nie mogą głosować na prezentacje swoich grup.\n", - "\n", - " * Ankieta dla studentów: https://forms.gle/W4hASsPH8MEvF4fe9\n", - "\n", - " * Ankieta dla gości oraz prowadzących poszczególne grupy: https://forms.gle/F5jqhtLpQoX95KcT8\n", - " \n", - "\n", - "### Prezentacje wyróżnione przez studentów\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Miejce Nazwa projektu Punkty bonusowe
1. Grupa 7 (Brydż) 10
2. / 3. Grupa 3 (BiedronApp) 6
2. / 3. Grupa 2 (SmartHome WRSD) 6
4. Grupa 1 (FinTech) 3
5. Grupa 5 (AUTOWycena)2
\n", - "\n", - "### Prezentacje wyróżnione przez prowadzących i gości\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Miejce Nazwa projektu Punkty bonusowe
1. / 2. Grupa 3 (BiedronApp) 9
1. / 2. Grupa 7 (Brydż) 9
3. Grupa 5 (AUTOWycena) 5
4 Grupa 1 (FinTech) 3
5 Grupa 2 (SmartHome WRSD) 2
\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Plan zajęć\n", - " * Wprowadzenie (17.15 - 17.20)\n", - " \n", - " * Prezentacje\n", - "\n", - " * Team A (17.20)\n", - " \n", - " * Team B (17.30)\n", - " \n", - " * Team C (17.40)\n", - " \n", - " * Team D (17.50)\n", - " \n", - " * Team E (18.00)\n", - " \n", - " * Team F (18.10)\n", - " \n", - " * Team G (18.20)\n", - " \n", - " * Wypełnienie ankiet i zakończenie (18.30 - 18.45)\n", - "\n", - "\n", - "\n", - "\n" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "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" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/Organizacja zajęć.ipynb b/Organizacja zajęć.ipynb deleted file mode 100644 index 122abc2..0000000 --- a/Organizacja zajęć.ipynb +++ /dev/null @@ -1,243 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Organizacja zajęć na przedmiocie Systemy Informatyczne (2022 - 2023)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 1. Informacje o przedmiocie\n", - "Systemy informatyczne to przedmiot prowadzony w formie wykładów i laboratoriów dla studentów III semestru studiów magisterskich na kierunku Analiza i Przetwarzanie Danych. \n", - "Celem przedmiotu jest zaznajomienie studentów z przebiegiem tworzenia systemu informatycznego - od powstania wizji projektu do realizacji działającego prototypu. Cel ten będzie realizowany poprzez kształcenie następujących umiejętności u studentów:\n", - "\n", - "- rozwój kreatywności w projektowaniu systemu informatycznego\n", - "- poznanie charakterystyki innowacyjnego systemu informatycznego\n", - "- rozwój umiejętności współpracy w zespole\n", - "- nabycie umiejętności menedżerskich\n", - "- nabycie umiejętności pozyskiwania inwestorów dla projektów informatycznych\n", - "- rozwój umiejętności występowania publicznego\n", - "- doskonalenie umiejętności pracy zespołowej metodykami zwinnymi\n", - "- poznanie praktyk ciągłej integracji. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 2. Efekty kształcenia\n", - "Student:\n", - " - Rozumie społeczne aspekty pracy zespołowej w projekcie informatycznym.\n", - " - Potrafi określić cechy innowacyjnego projektu informatycznego.\n", - " - Potrafi wizualizować system informatyczny za pomocą makiety.\n", - " - Potrafi przygotować się do procesu pozyskiwania inwestorów dla systemu informatycznego.\n", - " - Umie przygotować się do publicznej prezentacji koncepcji systemu informatycznego.\n", - " - Potrafi uczestniczyć w projekcie prowadzonym metodykami zwinnymi.\n", - " - Potrafi uczestniczyć w procesie ciągłej integracji.\n", - " - Potrafi zintegrować system ciągłej integracji z systemem kontroli wersji.\n", - " - Potrafi opracować specyfikację zakresu systemu informatycznego.\n", - " - Potrafi organizować pracę w trakcie rozwoju systemu informatycznego.\n", - " - Potrafi zaprojektować użyteczny system informatyczny.\n", - " - Umie zorganizować proces przeprowadzenia testów systemu informatycznego.\n", - " - Potrafi uruchomić procesy prowadzące do pozyskania systemu informatycznego o wysokiej jakości.\n", - " - Potrafi planować zadania w projekcie informatycznym.\n", - " - Zna specyfikę zarządzania projektem informatycznym.\n", - " - Potrafi przedstawić cele i działanie systemu informatycznego jego interesariuszom.\n", - " - Potrafi przygotować demonstrację systemu informatycznego.\n", - " - Potrafi zaprezentować publicznie cele i działanie systemu informatycznego.\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 3. Zasady zaliczenia wykładów\n", - "\n", - "Wykład może być zaliczony albo na podstawie punktów uzyskanych za rozwiązywanie testów podawanych na wykładzie, albo poprzez egzamin końcowy. \n", - "\n", - "Za prawidłowe odpowiedzi na pytania testowe podawane podczas wykładu studenci otrzymują punkty (1 punkt za prawidłową odpowiedź). Testy rozwiązywane mogą być na dowolnych urządzeniach, które dysponują przeglądarką internetową. System do testów jest osiągalny pod adresem: \n", - " **cybertest2.wmi.amu.edu.pl** \n", - "Logowanie do systemu odbywa się za pomocą standardowych danych dostępowych na WMI. \n", - "\n", - "**UWAGA: Rozwiązywanie testów dozwolone jest tylko podczas obecności na wykładzie.**\n", - "\n", - "Wykładowca zobowiązuje się do przeprowadzenia testów z minimum 120 pytaniami podczas całego kursu (standardowo: 5 pytań powtórkowych na początku wykładu i 5 pytań na końcu wykładu). \n", - "\n", - "### Zwolnienia z egzaminu na podstawie punktów z wykładu\n", - "Student zwolniony jest z egzaminu z oceną dostateczny plus lub wyższą, wynikającą z punktów zdobytych za rozwiązanie zadań testowych podawanych na wykładach. \n", - "\n", - "Studenci niespełniający powyższego kryterium zdają egzamin obejmujący materiał przedstawiany na wykładach. Studenci mogą zdawać egzamin również w sytuacji, gdy nie satysfakcjonuje ich ocena uzyskana na podstawie zdobytych punktów.\n", - "\n", - "**Rozwiązywanie testu przez osobę nieobecną na wykładzie jest niezgodne z podanymi zasadami i uniemożliwia tej osobie zwolnienie z egzaminu na podstawie punktów z wykładu.**\n", - "\n", - "\n", - "### Skala ocen z wykładu \n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Liczba prawidłowych odpowiedzi Ocena
100-1205
90-994,5
80-894
70-793,5
poniżejegzamin
\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 4. Zasady zaliczenia z laboratoriów\n", - "\n", - "Laboratoria zaliczane są na podstawie punktów zdobywanych na poszczególnych zajęciach.\n", - "\n", - "Zadania wykonywane są w zespołach (maksymalnie) 4-osobowych. Wszystkie osoby z danego zespołu obecne na zajęciach otrzymują tę samą ocenę punktową.\n", - "\n", - "Punkty można uzyskiwać za:\n", - "\n", - " * wykonywanie zadań zaplanowanych na dane laboratorium,\n", - " * prezentację koncepcji projektu,\n", - " * realizację sprintów (począwszy od laboratorium nr 6),\n", - " * wykonanie prototypu potwierdzone demonstracją końcową.\n", - "\n", - "Student nieobecny na zajęciach ma możliwość uzyskania oceny punktowej nie wyższej niż 75% punktów zdobytych przez zespół. Warunkiem uzyskania punktów jest wykonanie w przeciągu tygodnia zadań zaproponowanych przez lidera zaspołu i zaakceptowanych przez prowadzącego.\n", - " \n", - "### Prototyp systemu informatycznego\n", - " \n", - "Przez prototyp systemu informatycznego rozumiana jest działająca wersja systemu informatycznego spełniająca wszystkie lub wybrane jego funkcje.\n", - "\n", - "W pliku **Tematy projektów** zaproponowano tematy projektów informatycznych. Studenci mają prawo opracowania własnego tematu projektu za akceptacją prowadzącego.\n", - " \n", - "\n", - "### Punktacja zadań wykonywanych na laboratorium\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Typ zadania Maksymalna liczba punktów
Zadania na laboratoriach12 x 30 = 360
Prezentacja koncepcji30
Sprinty6 x 10 = 60
Wykonanie prototypu potwierdzone demonstracją150
Harmonogram wsteczny (zadanie bonusowe z wykładu nr 13) 20
Suma600+20
\n", - "\n", - "### Ocena prototypu\n", - "\n", - "Na przedostatnich zajęciach z laboratorium opiekun projektu decyduje, czy prototyp projektu spełnił swoje założenia.\n", - " \n", - "Jeśli prototyp nie spełnia założeń, to ocena końcowa wynosi 0 punktów (na 150).\n", - "\n", - "Jeśli prototyp spełnia założenia, to opiekun projektu proponuje ocenę w skali do 150 punktów.\n", - "\n", - "Proponowane składowe oceny implementacji prototypu:\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Za co? Maksymalna liczba punktów do zdobycia
Functionality (funkcjonalność) 40
Usability (Użyteczność) 30
Reliability (niewystępowanie błędów) 20
Performance (wydajność: zużycie zasobów, czas odpowiedzi) 10
Podręcznik użytkowania lub pomocy dla użytkownika) 10
Raport z testowania wersji końcowej 20
Raport użyteczności wersji końcowej 20
SUMA 150
\n", - " \n", - "Ocena proponowana przez opiekuna jest weryfikowana przez komisję, w skład której wchodzą wszyscy opiekunowie po końcowej demonstracji publicznej prototypu.\n", - "\n", - "### Skala ocen z laboratorium\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Liczba punktów Ocena
500-6205
450-4994,5
400-4494
350-3993,5
300-3493
\n" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "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.8.5" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/Prezentacje koncepcji.ipynb b/Prezentacje koncepcji.ipynb deleted file mode 100644 index 17b1a51..0000000 --- a/Prezentacje koncepcji.ipynb +++ /dev/null @@ -1,139 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Organizacja prezentacji koncepcji projektów w dniu 8 listopada\n", - "Informacje dotyczą prezentacji koncepcji projektów. \n", - "Podane poniżej informacje mogą ulec korektom do dnia 7 listopada." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "##### Termin i forma prezentacji\n", - " * Wszystkie prezentacje powinny znaleźć się w odpowiednim folderze na Teamsach w nieprzekraczalnym terminie 6 listopada.\n", - " * Prezentacje będą prowadzone publicznie podczas zajęć przewidzianych na laboratorium w dniu 8 listopada o godz. 17.15. Prezentacje odbędą się w auli C, Szacowany czas na jedną prezentację to 10 minut.\n", - " * Podczas prezentacji wskazana jest obecność \"na scenie\" całej grupy. Nie jest jednak wymagane, aby wypowiadali się wszyscy studenci.\n", - " * Wszystkie prezentacje powinny zostaćprzekazane " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Ocena prezentacji\n", - " * Każda prezentacja, spełniająca podstawowe oczekiwania dot. prezentacji, otrzyma ocenę bazową: 20 punktów. \n", - " * Do oceny bazowej zostaną doliczone punkty bonusowe za prezentacje wyróżnione przez:\n", - " * studentów,\n", - " * prowadzących oraz zaproszonych gości.\n", - " * Punkty bonusowe przyznane przez obie grupy odbiorców są sumowane.\n", - "\n", - " * Wyróżnienia będą przyznawane na podstawie wyników ankiet. W ramach ankiety każdy student i każdy prowadzący (gość) będzie poproszony o wskazanie pięciu najlepszych prezentacji. Studenci nie mogą głosować na prezentacje swoich grup.\n", - "\n", - " * Ankieta dla studentów: https://forms.gle/W4hASsPH8MEvF4fe9\n", - "\n", - " * Ankieta dla gości oraz prowadzących poszczególne grupy: https://forms.gle/F5jqhtLpQoX95KcT8\n", - " \n", - "\n", - "### Prezentacje wyróżnione przez studentów\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Miejce Nazwa projektu Punkty bonusowe
1. Grupa 7 (Brydż) 10
2. / 3. Grupa 3 (BiedronApp) 6
2. / 3. Grupa 2 (SmartHome WRSD) 6
4. Grupa 1 (FinTech) 3
5. Grupa 5 (AUTOWycena)2
\n", - "\n", - "### Prezentacje wyróżnione przez prowadzących i gości\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Miejce Nazwa projektu Punkty bonusowe
1. / 2. Grupa 3 (BiedronApp) 9
1. / 2. Grupa 7 (Brydż) 9
3. Grupa 5 (AUTOWycena) 5
4 Grupa 1 (FinTech) 3
5 Grupa 2 (SmartHome WRSD) 2
\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Plan zajęć\n", - " * Wprowadzenie (17.15 - 17.20)\n", - " \n", - " * Prezentacje\n", - "\n", - " * Team A (17.20)\n", - " \n", - " * Team B (17.30)\n", - " \n", - " * Team C (17.40)\n", - " \n", - " * Team D (17.50)\n", - " \n", - " * Team E (18.00)\n", - " \n", - " * Team F (18.10)\n", - " \n", - " * Team G (18.20)\n", - " \n", - " * Wypełnienie ankiet i zakończenie (18.30 - 18.45)\n", - "\n", - "\n", - "\n", - "\n" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "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.8.5" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/Tematy projektów.ipynb b/Tematy projektów.ipynb deleted file mode 100644 index ae2b52e..0000000 --- a/Tematy projektów.ipynb +++ /dev/null @@ -1,120 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Tematy projektów proponowanych w roku akademickim 2022 /2023" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Anonimizacja zdjęć pojazdów\n", - "Celem projektu jest wytrenowanie algorytmu uczenia maszynowego, który znajduje i zasłania wrażliwe elementy na zdjęciu pojazdu. Są to m.in. tablice rejestracyjne i twarze osób znajdujących się w pojeździe.\n", - "Algorytm może bazować na kodzie otwarto-źródłowym. Do trenowania należy skorzystać z bazy danych zdjęć udostępnionej specjalnie dla tego projektu. Do oceny jakości algorytmu należy zastosować platformę Gonito (https://gonito.herokuapp.com/, https://gonito.net/).\n", - "W ramach projektu wskazane jest opracowanie również interfejsu użytkownika." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Wycena wartości szkody na podstawie zdjęć\n", - "Celem projektu jest wytrenowanie algorytmu uczenia maszynowego, który szacuje wartość szkody na podstawie zestawu zdjęć uszkodzonego pojazdu. Algorytm może bazować na kodzie otwarto-źródłowym. Do trenowania należy skorzystać z bazy danych zdjęć udostępnionej specjalnie dla tego projektu. Do oceny jakości algorytmu należy zastosować platformę Gonito (https://gonito.herokuapp.com/, https://gonito.net/).\n", - "W ramach projektu wskazane jest opracowanie również interfejsu użytkownika." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Portfel inwestycyjny\n", - "Celem projektu jest opracowanie algorytmu predykcji notowań spółek na bazie danych z www.gpw.pl/archiwum-notowan. Do oceny jakości algorytmu należy zastosować platformę Gonito (https://gonito.herokuapp.com/, https://gonito.net/).\n", - "Tak opracowany algorytm należy zastosować w atrakcyjnej aplikacji, np. w grze umożliwiającej analizę zysków i strat w oparciu o fikcyjne zakupy i sprzedaże papierów wartościowych wybranych spółek w zadanym okresie czasu." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Handel walutami\n", - "Celem projektu jest opracowanie algorytmu predykcji notowań walut na podstawie danych ze strony https://www.nbp.pl/home.aspx?f=/statystyka/kursy.html. Do oceny jakości algorytmu należy zastosować platformę Gonito (https://gonito.herokuapp.com/, https://gonito.net/).\n", - "Tak opracowany algorytm należy zastosować w atrakcyjnej aplikacji, np. w grze dla wielu osób handlujących walutami (w grze należy założyć, że gracze nie mają wglądu w przyszłe notowania i określić zasady zwycięstwa)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Generowanie obrazów z ich opisów \n", - "Celem projektu jest wykorzystanie otwartego kodu do generowania obrazów z tekstu (https://stability.ai/blog/stable-diffusion-public-release). (Przykład takiego wykorzystania można zobaczyć na stronie creator.nightcafe.studio.) W projekcie można wykorzystać dostępny kod w dowolny sposób. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Interaktywny system do uatrakcyjnienia wykładów\n", - "Kurs Systemy Informatyczne korzysta z systemu testowania wiedzy studentów podczas wykładów. Celem tego systemu jest zachęcenie studentów do systematycznego i aktywnego udziału w wykładach. W ramach projektu studenci mogą rozwinąć stosowany na wykładzie system **cybertest** (który oparty jest na otwartoźródłowym kodzie Tao Testing) lub zaproponować zupełnie inny system, który może pomóc wykładowcy w urozmaiceniu wykładu. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## \tProjekt dydaktyczny \n", - "Celem projektu jest stworzenie aplikacji, która ułatwia zrozumienie i stosowanie wybranego pojęcia lub metody z matematyki lub informatyki. Przykładem aplikacji tego typu jest serwis regexper.com, który wyjaśnia, dlaczego tekst pasuje do wyrażenia regularnego i który fragment tekstu pasuje do którego fragmentu wzorca." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Aplikacja mobilna\n", - "Celem projektu jest wykorzystanie technologii pomocnych w tworzeniu aplikacji mobilnych. Przykładowym tematem projektu może być aplikacja mobilna optymalizująca zamówienie jedzenia/napojów składanego przez wiele osób (na wynos lub w restauracji) w taki sposób, by rachunek był jak najmniejszy." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Czym jest system Gonito?

\n", - "\n", - "Gonito to platforma do oceny skuteczności algorytmów sztucznej inteligencji. W systemie Gonito tworzone są tzw. wyzwania, które służą do ewaluacji rozwiązań określonego zadania. Wyzwanie składa się z następujących elementów:\n", - "\n", - "
" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "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.8.5" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na laboratorium/.ipynb_checkpoints/01_praca_zespolowa_lab-checkpoint.ipynb b/materiały na laboratorium/.ipynb_checkpoints/01_praca_zespolowa_lab-checkpoint.ipynb index 2f4e477..525ad72 100644 --- a/materiały na laboratorium/.ipynb_checkpoints/01_praca_zespolowa_lab-checkpoint.ipynb +++ b/materiały na laboratorium/.ipynb_checkpoints/01_praca_zespolowa_lab-checkpoint.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

Systemy informatyczne

\n", "

1. Organizacja pracy zespołowej

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "
\n" ] }, { @@ -28,18 +25,17 @@ "metadata": {}, "source": [ "# Organizacja zespółów projektowych na laboratorium nr 1\n", - "Studenci organizaują się w zespoły maksymalnie 4-osobowe. Zespoły organizowane są przez osoby, które uzyskały najwyższe wyniki w teście na lidera przeprowadzonym na wykładzie.\n", + "Studenci organizaują się w zespoły maksymalnie 4-osobowe. \n", + "Liderem zespolu jest osoba, która uzyskała najwyższy wynik na wykładzie z testu na lidera.\n", "\n", "Wskazane jest, aby w grupie znaleźli się studenci o różnych osobowościach (względem motywacji i podejścia do pracy).\n", "\n", "Wskazane jest, aby w każdym zespole znalazły się osoby o zróznicowanych umiejętnościach:\n", - "* Wizjoner - osoba, która podejmuje decyzję o kierunku wspólnych prac: jaki projekt opracowujemy na Laboratorium 1. (Projekt może ulec zmianie do zajęć nr 3 włącznie).\n", - "* Specjalista – grafik; jego zadaniem będzie stworzenie rysunku – projektu interfejsu użytkownika - najlepiej za pomocą jakiegoś narzędzia.\n", - "* Bibliotekarz; jego zadaniem będzie opisanie wizji projektu słowami.\n", "\n", - "W ten sposob tworzone są zespoły, które będą współpracować na laboratorium nr 1. \n", - "\n", - "Podczas Laboratorium 1. liderem zespołu jest osoba, która uzyskała najwyższy wynik w teście na lidera podczas wykładu. \n", + "* Lider - osoba, która kieruje pracami na zajęciach i wykonuje pisemny raport z prac. \n", + "* Artysta - grafik; jego zadaniem będzie stworzenie rysunku – projektu interfejsu użytkownika - za pomocą jakiegoś narzędzia informatycznego lub ołówkiem na kartce\n", + "* Specjalista ML - jego zadaniem będzie wykonanie zadania z dziedziny uczenia maszynowego\n", + "* Specjalista Front-End - jego zadaniem będzie wykonanie front-endu zgodnego z projektem interfejsu użytkownika\n", "\n", "Zarówno składy zespołów, jak i liderzy mogą ulec zmianie do zajęć nr 3 włącznie." ] @@ -48,57 +44,61 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Proponowany plan laboratorium" + "# Zadania" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Zadanie 1. Zorganizowanie zespołu projektowego.\n", - "Czas wykonania: 30 minut. \n", - "Rezultat: Dokument, zawierający informacje o liderze i pozostałych członkach zespołu oraz o opiekunie zespołu. \n", - "Dla lidera należy podać: \n", - " * Jego preferowany typ przywództwa wg charaketrystyki z wykładu,\n", - " * Typ motywacji i podejścia do zadań (np. A1) według klasyfikacji podanej na wykładzie.\n", - " \n", - "Dla pozostałych członków zespołu: \n", - " * Rola w zespole (deweloper, bibliotekarz, grafik itp.),\n", - " * Typ motywacji i podejścia do zadań (np. A1) według klasyfikacji podanej na wykładzie.\n", - " \n", - "Maksymalna ocena: 5 punktów" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Zadanie 2. Burza mózgów i praca indywidualna\n", - "Czas: 30 minut.\n", + "## Zadanie 1. Projekt interfejsu użytkownika\n", "\n", - "Przebieg: Studenci dyskutują nad wizją projektu, którą chcą przedstawić jako efekt pracy na Laboratorium nr. 1. Może to być projekt, który zespół planuje implementować na przyszłych zajęciach. Lista proponowanych tematów projektów podana jest w pliku **Tematy projektów**. Jeśli takich planów nie ma, można opracować wizję systemu do prowadzenia testów na wykładach prowadzonych na WMI (lepszego od cybertest!). \n", - "\n", - "Następnie każdy student indywidualnie szkicuje wizję projektu na kartce (w postaci interfejsu użytkownika lub schematu działania) i opisuje działanie systemu za pomocą 3-5 zdań. \n", - "\n", - "Rezultat: Tyle dokumentów, ilu jest studentów w grupie. Kartki najlepiej sfotografować i umieścić w systemie Teams.\n", + "Treść zadania: Wykonać projekt interfejsu użytkownika do zadania programistycznego podanego w Zadaniu 2.\n", " \n", - "Maksymalna ocena: 10 punktów" + "Rezultat: Dokument w postaci zeskanowanej kartki papieru lub plik graficzny.\n", + "\n", + "Ocena maksymalna: 5 punktów" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - " ## Zadanie 3. Praca zespołowa\n", - "Czas: 30 minut. \n", + "## Zadanie 2. Zadanie z uczenia maszynowego\n", + "\n", + "Treść zadania: Wykonać zadanie informatyczne z zakresu uczenia maszynowego. Zadanie zostanie podane przez prof. Gralińskiego.\n", " \n", - "Cel: przedstawienie wspólnej wizji projektu. \n", + "Rezultat: Plik w języku programowania Python.\n", "\n", - "Rezultat:\n", - " * jeden szkich interfejsu lub schematu działania wykonany w dowolnym programie graficznym (np. figma);\n", - " * jeden dokument (10-15 zdań) opisujący działanie projektowanego systemu.\n", + "Ocena maksymalna: 10 punktów" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Zadanie 3. Interfejs użytkownika\n", "\n", - "Maksymalna ocena: 15 punktów " + "Treść zadania: Wykonać interfejs użytkownika zgodny projektem interfejsu (nie implementujemy logiki systemu). (Dla osób niewprawionych pomocna może okazać się biblioteka Tkinter w języku Python.)\n", + " \n", + "Rezultat: Plik wykonywalny\n", + "\n", + "Ocena maksymalna: 10 punktów" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Zadanie 4. Raport z zadań\n", + "\n", + "Treść zadania: Wykonać raport z zadań zawierający:\n", + " - nazwiska członków grupy oraz charakterystykę ich osobowości wg wykładu\n", + " - podręcznik użytkownika do zadań 2. i 3.\n", + " \n", + "Rezultat: Dokument tekstowy\n", + "\n", + "Ocena maksymalna: 5 punktów" ] } ], diff --git a/materiały na laboratorium/.ipynb_checkpoints/07_specyfikacja_projektu_informatycznego_lab-checkpoint.ipynb b/materiały na laboratorium/.ipynb_checkpoints/07_specyfikacja_projektu_informatycznego_lab-checkpoint.ipynb index 057429e..51eca38 100644 --- a/materiały na laboratorium/.ipynb_checkpoints/07_specyfikacja_projektu_informatycznego_lab-checkpoint.ipynb +++ b/materiały na laboratorium/.ipynb_checkpoints/07_specyfikacja_projektu_informatycznego_lab-checkpoint.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

7. Specyfikacja projektu informatycznego[laboratorium]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "
" ] }, { @@ -19,7 +16,7 @@ "metadata": {}, "source": [ "# Cel laboratorium nr 7\n", - "Celem laboratorium jest opracowanie specyfikacji systemu informatycznego będącego wynikiem projektu B+R.\n" + "Celem laboratorium jest opracowanie specyfikacji systemu informatycznego analizy danych.\n" ] }, { diff --git a/materiały na laboratorium/.ipynb_checkpoints/08_testowanie_w_programowaniu_zwinnym_lab-checkpoint.ipynb b/materiały na laboratorium/.ipynb_checkpoints/08_testowanie_w_programowaniu_zwinnym_lab-checkpoint.ipynb index 5c7fbc5..cc55f4d 100644 --- a/materiały na laboratorium/.ipynb_checkpoints/08_testowanie_w_programowaniu_zwinnym_lab-checkpoint.ipynb +++ b/materiały na laboratorium/.ipynb_checkpoints/08_testowanie_w_programowaniu_zwinnym_lab-checkpoint.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

8. Testowanie w programowaniu zwinnym[laboratorium]

\n", "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "" ] }, { diff --git a/materiały na laboratorium/.ipynb_checkpoints/09_testowanie_integracyjne_i_systemowe_lab-checkpoint.ipynb b/materiały na laboratorium/.ipynb_checkpoints/09_testowanie_integracyjne_i_systemowe_lab-checkpoint.ipynb index b3495a3..5334c79 100644 --- a/materiały na laboratorium/.ipynb_checkpoints/09_testowanie_integracyjne_i_systemowe_lab-checkpoint.ipynb +++ b/materiały na laboratorium/.ipynb_checkpoints/09_testowanie_integracyjne_i_systemowe_lab-checkpoint.ipynb @@ -4,13 +4,10 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

9. Testowanie integracyjne i systemowe[laboratorium]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { @@ -27,18 +24,31 @@ "source": [ "# Plan laboratorium\n", "\n", - " ## Zadanie 1. Testy systemowe\n", + " ## Zadanie 1.\n", + "Dla Waszego systemu opracujcie po jednym przykładzie testu na każdym poziomie szczegółowości: \n", + " * \"smoke test\"\n", + " * \"sanity test\"\n", + " * \"regression test\"\n", + " \n", + "Maksymalna ocena: 10 punktów\n", + "\n", + " ## Zadanie 2. Plan testów\n", "Opracujcie plan testów, zawierający przypadki testowe. \n", "Należy założyć, że testy mają obejmować co najmniej 3 typy testowania. \n", "\n", "Maksymalna ocena: 20 punktów\n", "\n", - "## Zadanie 2. Testy automatyczne\n", + "## Zadanie dodatkowe. Testy automatyczne\n", "Korzystając z frameworku Selenium opracujcie test automatyczny, sprawdzający jakąś podstawową funkcjonalność Waszego systemu (np. logowanie.) \n", "(W zastępstwie można opracować test automatyczny logowania do jednego z systemów: USOS, Jira lub Git.) \n", "Jako wynik zadania umieśćcie nagranie testu. \n", "\n", - "Maksymalna ocena: 10 punktów" + "Maksymalna ocena: 10 punktów\n", + "\n", + "## Zakończenie sprintu\n", + "10 punktów\n", + "\n", + "## Rozpoczęcie kolejnego sprintu" ] } ], @@ -61,7 +71,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.8.5" }, "subtitle": "09. Testowanie integracyjne i systemowe[laboratorium]", "title": "Projekt badawczo-rozwojowy", diff --git a/materiały na laboratorium/.ipynb_checkpoints/12_ocena_jakości_systemu_lab-checkpoint.ipynb b/materiały na laboratorium/.ipynb_checkpoints/12_ocena_jakości_systemu_lab-checkpoint.ipynb index cb012c2..7f08cc0 100644 --- a/materiały na laboratorium/.ipynb_checkpoints/12_ocena_jakości_systemu_lab-checkpoint.ipynb +++ b/materiały na laboratorium/.ipynb_checkpoints/12_ocena_jakości_systemu_lab-checkpoint.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

Systemy informatyczne

\n", "

12. Ocena jakości systemu informatycznego[laboratorium]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { diff --git a/materiały na laboratorium/01_praca_zespolowa_lab.ipynb b/materiały na laboratorium/01_praca_zespolowa_lab.ipynb index 2f4e477..525ad72 100644 --- a/materiały na laboratorium/01_praca_zespolowa_lab.ipynb +++ b/materiały na laboratorium/01_praca_zespolowa_lab.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

Systemy informatyczne

\n", "

1. Organizacja pracy zespołowej

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "\n" ] }, { @@ -28,18 +25,17 @@ "metadata": {}, "source": [ "# Organizacja zespółów projektowych na laboratorium nr 1\n", - "Studenci organizaują się w zespoły maksymalnie 4-osobowe. Zespoły organizowane są przez osoby, które uzyskały najwyższe wyniki w teście na lidera przeprowadzonym na wykładzie.\n", + "Studenci organizaują się w zespoły maksymalnie 4-osobowe. \n", + "Liderem zespolu jest osoba, która uzyskała najwyższy wynik na wykładzie z testu na lidera.\n", "\n", "Wskazane jest, aby w grupie znaleźli się studenci o różnych osobowościach (względem motywacji i podejścia do pracy).\n", "\n", "Wskazane jest, aby w każdym zespole znalazły się osoby o zróznicowanych umiejętnościach:\n", - "* Wizjoner - osoba, która podejmuje decyzję o kierunku wspólnych prac: jaki projekt opracowujemy na Laboratorium 1. (Projekt może ulec zmianie do zajęć nr 3 włącznie).\n", - "* Specjalista – grafik; jego zadaniem będzie stworzenie rysunku – projektu interfejsu użytkownika - najlepiej za pomocą jakiegoś narzędzia.\n", - "* Bibliotekarz; jego zadaniem będzie opisanie wizji projektu słowami.\n", "\n", - "W ten sposob tworzone są zespoły, które będą współpracować na laboratorium nr 1. \n", - "\n", - "Podczas Laboratorium 1. liderem zespołu jest osoba, która uzyskała najwyższy wynik w teście na lidera podczas wykładu. \n", + "* Lider - osoba, która kieruje pracami na zajęciach i wykonuje pisemny raport z prac. \n", + "* Artysta - grafik; jego zadaniem będzie stworzenie rysunku – projektu interfejsu użytkownika - za pomocą jakiegoś narzędzia informatycznego lub ołówkiem na kartce\n", + "* Specjalista ML - jego zadaniem będzie wykonanie zadania z dziedziny uczenia maszynowego\n", + "* Specjalista Front-End - jego zadaniem będzie wykonanie front-endu zgodnego z projektem interfejsu użytkownika\n", "\n", "Zarówno składy zespołów, jak i liderzy mogą ulec zmianie do zajęć nr 3 włącznie." ] @@ -48,57 +44,61 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Proponowany plan laboratorium" + "# Zadania" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Zadanie 1. Zorganizowanie zespołu projektowego.\n", - "Czas wykonania: 30 minut. \n", - "Rezultat: Dokument, zawierający informacje o liderze i pozostałych członkach zespołu oraz o opiekunie zespołu. \n", - "Dla lidera należy podać: \n", - " * Jego preferowany typ przywództwa wg charaketrystyki z wykładu,\n", - " * Typ motywacji i podejścia do zadań (np. A1) według klasyfikacji podanej na wykładzie.\n", - " \n", - "Dla pozostałych członków zespołu: \n", - " * Rola w zespole (deweloper, bibliotekarz, grafik itp.),\n", - " * Typ motywacji i podejścia do zadań (np. A1) według klasyfikacji podanej na wykładzie.\n", - " \n", - "Maksymalna ocena: 5 punktów" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Zadanie 2. Burza mózgów i praca indywidualna\n", - "Czas: 30 minut.\n", + "## Zadanie 1. Projekt interfejsu użytkownika\n", "\n", - "Przebieg: Studenci dyskutują nad wizją projektu, którą chcą przedstawić jako efekt pracy na Laboratorium nr. 1. Może to być projekt, który zespół planuje implementować na przyszłych zajęciach. Lista proponowanych tematów projektów podana jest w pliku **Tematy projektów**. Jeśli takich planów nie ma, można opracować wizję systemu do prowadzenia testów na wykładach prowadzonych na WMI (lepszego od cybertest!). \n", - "\n", - "Następnie każdy student indywidualnie szkicuje wizję projektu na kartce (w postaci interfejsu użytkownika lub schematu działania) i opisuje działanie systemu za pomocą 3-5 zdań. \n", - "\n", - "Rezultat: Tyle dokumentów, ilu jest studentów w grupie. Kartki najlepiej sfotografować i umieścić w systemie Teams.\n", + "Treść zadania: Wykonać projekt interfejsu użytkownika do zadania programistycznego podanego w Zadaniu 2.\n", " \n", - "Maksymalna ocena: 10 punktów" + "Rezultat: Dokument w postaci zeskanowanej kartki papieru lub plik graficzny.\n", + "\n", + "Ocena maksymalna: 5 punktów" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - " ## Zadanie 3. Praca zespołowa\n", - "Czas: 30 minut. \n", + "## Zadanie 2. Zadanie z uczenia maszynowego\n", + "\n", + "Treść zadania: Wykonać zadanie informatyczne z zakresu uczenia maszynowego. Zadanie zostanie podane przez prof. Gralińskiego.\n", " \n", - "Cel: przedstawienie wspólnej wizji projektu. \n", + "Rezultat: Plik w języku programowania Python.\n", "\n", - "Rezultat:\n", - " * jeden szkich interfejsu lub schematu działania wykonany w dowolnym programie graficznym (np. figma);\n", - " * jeden dokument (10-15 zdań) opisujący działanie projektowanego systemu.\n", + "Ocena maksymalna: 10 punktów" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Zadanie 3. Interfejs użytkownika\n", "\n", - "Maksymalna ocena: 15 punktów " + "Treść zadania: Wykonać interfejs użytkownika zgodny projektem interfejsu (nie implementujemy logiki systemu). (Dla osób niewprawionych pomocna może okazać się biblioteka Tkinter w języku Python.)\n", + " \n", + "Rezultat: Plik wykonywalny\n", + "\n", + "Ocena maksymalna: 10 punktów" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Zadanie 4. Raport z zadań\n", + "\n", + "Treść zadania: Wykonać raport z zadań zawierający:\n", + " - nazwiska członków grupy oraz charakterystykę ich osobowości wg wykładu\n", + " - podręcznik użytkownika do zadań 2. i 3.\n", + " \n", + "Rezultat: Dokument tekstowy\n", + "\n", + "Ocena maksymalna: 5 punktów" ] } ], diff --git a/materiały na laboratorium/02_innowacyjny projekt informatyczny_lab.ipynb b/materiały na laboratorium/02_innowacyjny projekt informatyczny_lab.ipynb deleted file mode 100644 index f2b1fc0..0000000 --- a/materiały na laboratorium/02_innowacyjny projekt informatyczny_lab.ipynb +++ /dev/null @@ -1,95 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy informatyczne

\n", - "

2. Innowacyjny projekt informatyczny[laboratorium]

\n", - "

Krzysztof Jassem (2021)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Organizacja zespółów projektowych na laboratorium nr 2\n", - "W stosunku do laboratorium nr. 1 studenci mogą zorganizować się w nowe grupy. \n", - "Można opracować koncepcję zupełnie nowego projektu badawczo-rozwojowego lub kontynuować projekt z poprzednich zajęć. Liderem zespołu powinna być osoba, która nie była liderem na poprzednich zajęciach (choćby na jeden raz).\n", - "\n", - "Składy zespołów mogą zmieniać się do zajęć nr 3 włącznie.\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Plan laboratorium nr 2\n", - "\n", - "## Zadanie 1. Makieta dynamiczna \n", - "\n", - "Skonstruujcie Minimum Viable Product waszego pomysłu w postaci mockupu dynamicznego. (Mockup dynamiczny to mockup, który obrazuje mozliwość jakichś akcji użytkownika i reakcji systemu, np. przejście do innego widoku po kliknięciu). \n", - "\n", - "Przykładowa aplikacja do tworzenia makiet dynamicznych on-line to: https://www.figma.com. \n", - "\n", - "Omówienie bezpłatnych narzędzi do makiet dynamicznych: \n", - "https://invette.pl/blog/najlepsze-narzedzia-dla-ui-ux/. \n", - "Wybór narzędzia należy jednak do Was.\n", - "\n", - "Rezultatem zadania jest makieta zapisana jako strona HTML, czyli spakowany plik zawierający plik (np. prototyp.htm) oraz powiązany folder (np. prototyp_pliki). \n", - "\n", - "Maksymalna ocena: 10 punktów\n", - "\n", - "## Zadanie 2. Rozwiązania konkurencyjne \n", - "Znajdźcie dwa lub trzy rozwiązania z podobnej dziedziny do Waszego rozwiązania. Omówcie je i potencjalnie pokażcie (za pomocą zrzutów ekranu). \n", - "\n", - "Maksymalna ocena: 10 punktów\n", - "\n", - "## Zadanie 3. Cechy istotne dla inwestora \n", - "Opiszcie cechy Waszego rozwiązania, wskazując cechy istotne dla inwestora: Zespół, Produkt, Rynek (slajd z wykładu R. Gregorowicza).\n", - "(Cechy te zostaną wykorzystane również w prezentacji, którą będziecie wykonywać na następnych zajęciach.)\n", - "\n", - "Maksymalna ocena: 10 punktów" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "author": "Krzysztof Jassem", - "email": "jassem@amu.edu.pl", - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "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.9.12" - }, - "subtitle": "02. Pojęcie projektu badawczo-rozwojowego[laboratorium]", - "title": "Projekt badawczo-rozwojowy", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na laboratorium/03_prezentacja_koncepcji_projektu_lab.ipynb b/materiały na laboratorium/03_prezentacja_koncepcji_projektu_lab.ipynb deleted file mode 100644 index d302b9f..0000000 --- a/materiały na laboratorium/03_prezentacja_koncepcji_projektu_lab.ipynb +++ /dev/null @@ -1,75 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy informatyczne

\n", - "

3. Prezentacja koncepcji projektu badawczo-rozwojowego[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Cel laboratorium\n", - "Celem laboratorium jest opracowanie koncepcji projektu B+R: (produktu HT / usługi / przedsięwzięcia), który będzie realizowany w ramach projektu zespołowego.\n", - "\n", - "Wynikiem pracy będzie prezentacja w formie slajdów skierowana do potencjalnych inwestorów." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Plan laboratorium\n", - "\n", - "\n", - "## Zadanie 1. Prezentacje dla inwestora\n", - "Każdy członek grupy przygotowuje indywidualnie prezentację dla inwestora (np. wg wzorca podanego na wykładzie). \n", - "UWAGA: W prezentacji powinien znaleźć się slajd wyjaśniający, jaka część projektu zostanie prawdopodobnie zrealizowana w ramach protorypu na koniec semestru.\n", - "Odpowiedź zawiera **n** (liczba członków zespołu) rozwiązań. \n", - "\n", - "Maksymalna ocena: 15 punktów\n", - "\n", - "## Zadanie 2. Końcowa wersja prezentacji\n", - "W odpowiedzi na to zadanie opracujcie prezentację, która Waszym zdaniem jest syntezą najlepszych części prezentacji indywidualnych.\n", - "\n", - "Maksymalna ocena: 15 punktów" - ] - } - ], - "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.8.5" - }, - "subtitle": "02. Prezentacja koncepcji projektu badawczo-rozwojowego[laboratorium]", - "title": "Projekt badawczo-rozwojowy", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na laboratorium/04_prezentacje_publiczne_lab.ipynb b/materiały na laboratorium/04_prezentacje_publiczne_lab.ipynb deleted file mode 100644 index 2a3725d..0000000 --- a/materiały na laboratorium/04_prezentacje_publiczne_lab.ipynb +++ /dev/null @@ -1,67 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy informatyczne

\n", - "

4. Publiczne prezentacje projektów[laboratorium]

\n", - "

Krzysztof Jassem (2021)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Cel laboratorium nr 4\n", - "\n", - "Celem laboratorium będzie publiczne przedstawienie koncepcji systemu informatycznego." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Plan laboratorium\n", - "\n", - "Podczas laboratorium poszczególne zespoły studentów przedstawiać będą: jednozdaniowy \"elevator pitch\" oraz prezentację dotyczącą swojego pomysłu. \n", - "\n", - "Widownią będą studenci wszystkich grup projektowych. Na ocenę prezentacji będą miały wpływ odczucia widowni - zebrane za pomocą ankiet.\n", - "\n", - "Maksymalna ocena: 30 punktów" - ] - } - ], - "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": "01. Prezentacje publiczne[laboratorium]", - "title": "Projekt badawczo-rozwojowy", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na laboratorium/05_metodyki_zwinne.ipynb b/materiały na laboratorium/05_metodyki_zwinne.ipynb deleted file mode 100644 index 0e62cde..0000000 --- a/materiały na laboratorium/05_metodyki_zwinne.ipynb +++ /dev/null @@ -1,95 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy informatyczne

\n", - "

5. Metodyki zwinne[laboratorium]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Cel laboratorium nr 5\n", - "Celem laboratorium jest rozpoczęcie prac w metodyce Scrum." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Plan laboratorium" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Zadanie 1. Role w projekcie według metodyki Scrum\n", - "* Podzielcie się rolami w projekcie według metodyki Scrum i opiszcie, jak widzicie swoje zadania w projekcie w świetle metodyki Scrum.\n", - "* Opracujcie 5-punktowy manifest pracy w Waszym zespole. \n", - "\n", - "Ocena maksymalna: 10 punktów" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " ## Zadanie 2. Zakładamy backlog \n", - "* Utwórzcie projekt w systemie JIRA na WMI. \n", - "* Opracujcie profile członków grupy (zdjęcia mile widziane). Do grupy dodajcie oboje prowadzących. \n", - "* Wpiszcie do backloga \"user stories\" związane z projektem - założcie w tym momencie, że wykonacie projekt \"na maksa\".\n", - "\n", - "Ocena maksymalna: 10 punktów " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Zadanie 3. Recycling gotowego oprogramowania\n", - "* Dokonajcie przeglądu dostępnych otwartych (open-source) projektów, które mogą być pomocne w Waszym projekcie. Dla każdego projektu określcie jego zalety i wady w kontekście zastosowania go w Waszym projekcie. Podsumowaniem zadania jest wstępne określenie projektów, których zastosowanie może być przydatne w Waszym projekcie. \n", - "\n", - " Wykonany przez Was system będzie oceniony tym wyżej, im więcej kodu będzie pochodzić z \"recyclingu\"! \n", - "\n", - "Ocena maksymalna: 10 punktów" - ] - } - ], - "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.8.5" - }, - "subtitle": "05. Metodologia Prince2Agile[laboratorium]", - "title": "Projekt badawczo-rozwojowy", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na laboratorium/06_prototypowanie_i_ciągła_integracja_lab.ipynb b/materiały na laboratorium/06_prototypowanie_i_ciągła_integracja_lab.ipynb deleted file mode 100644 index 12d72a4..0000000 --- a/materiały na laboratorium/06_prototypowanie_i_ciągła_integracja_lab.ipynb +++ /dev/null @@ -1,99 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy informatyczne

\n", - "

6. Prototypowanie i ciagła integracja[laboratorium]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Cel laboratorium nr 6\n", - "Celem laboratorium jest rozpoczęcie prac implementacyjnych z zastosowaniem ciągłej integracji." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Plan laboratorium\n", - "## Zadanie 1. Zorganizowanie repozytorium\n", - "Załóżcie repozytorium Git na serwerze wydziałowym. Wstawcie do niego plik Readme. \n", - "Sklonujcie repozytorium na maszynach lokalnych deweloperów. \n", - "Zintegrujcie Wasz projekt w systemie Jira z wydziałowym serwerem Git (w tym celu zgłoście takie zadanie w wydziałowym systemie Helpdesk, podając nazwę repozytorium Git oraz nazwę projektu Jira). \n", - "Wykażcie, że integracja się powiodła, umieszczając w Teamsach zrzut ekranu obrazujący integrację Waszego projektu z Gitem. (Integracja przebiegła pomyślnie, jeśli informacja o commicie w systemie Git pojawia się automatycznie w systemie Jira.) \n", - "\n", - "Ocena maksymalna: 10 punktów\n", - "\n", - "## Zadanie 2. Typ prototypu\n", - "Określ typ prototypu opracowanego na zajęciach (na skali: pionowy - poziomy). Uzasadnij wybór takiego typu prototypu.\n", - "\n", - "Ocena maksymalna: 5 punktów\n", - "\n", - "## Zadanie 3. Prototyp papierowy.\n", - "\n", - "Zilustruj projektowany system za pomocą prototypu papierowego. Przykładowe linki do podpowiedzi:\n", - "\n", - "https://www.uxpin.com/studio/blog/paper-prototyping-the-practical-beginners-guide/\n", - "\n", - "https://www.youtube.com/watch?v=_g4GGtJ8NCY\n", - "\n", - "https://www.youtube.com/watch?v=dt1bQsZ68iw\n", - "\n", - "Wykonany prototyp zademonstruj prowadzącym na zajęciach lub nagraj filmik i umieść go w Teamsach.\n", - "Ocena maksymalna: 15 punktów\n", - "\n", - "\n", - "## Zadanie dodatkowe (dla chętnych). Serwer ciągłej integracji\n", - "Połączcie Wasze wydziałowe repozytorium Git z Jenkinsem (jenkins.wmi.amu.edu.pl). \n", - "W celu utworzenia pipeline’u dla Waszego projektu utwórzcie zgłoszenie w systemie Helpdesk, podając login osoby odpowiedzialnej za projekt (sXXXXXX), nazwę projektu, a także ewentualne loginy innych członków zespołu, którzy mają mieć dostęp do projektu w Jenkinsie. \n", - "Stwórzcie *Jenkinsfile* budujący Waszą aplikację oraz uruchamiający prosty test. \n", - "\n", - "Rozwiązaniem zadania będzie poprawnie zakończony pipeline zdefiniowany na podstawie *Jenkinsfile* (który musi zostać umieszczony w Waszym repozytorium Git). \n", - "\n", - "Ocena maksymalna: 10 punktów\n", - "\n", - "## Pierwszy sprint!\n", - "Zalóżcie sprint. \n", - "Przenieście wybrane elementy (\"issues\") z backloga do sprintu, podzielcie je na zadania, przypiszcie zadania ludziom i skomentujcie je (w ich opisie). Skonsultujcie się z prowadzącymi. Wykonanie sprintu zostanie ocenione w kolejnym tygodniu. Pamiętajacie, że wynikiem sprintu ma być przyrost systemu widoczny dla użytkownika, którego reprezentują prowadzący laboratorium." - ] - } - ], - "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.8.5" - }, - "subtitle": "06. Prototypowanie i ciagła integracja[laboratorium]", - "title": "Projekt badawczo-rozwojowy", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na laboratorium/07_specyfikacja_projektu_informatycznego_lab.ipynb b/materiały na laboratorium/07_specyfikacja_projektu_informatycznego_lab.ipynb index 057429e..51eca38 100644 --- a/materiały na laboratorium/07_specyfikacja_projektu_informatycznego_lab.ipynb +++ b/materiały na laboratorium/07_specyfikacja_projektu_informatycznego_lab.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

7. Specyfikacja projektu informatycznego[laboratorium]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { @@ -19,7 +16,7 @@ "metadata": {}, "source": [ "# Cel laboratorium nr 7\n", - "Celem laboratorium jest opracowanie specyfikacji systemu informatycznego będącego wynikiem projektu B+R.\n" + "Celem laboratorium jest opracowanie specyfikacji systemu informatycznego analizy danych.\n" ] }, { diff --git a/materiały na laboratorium/08_testowanie_w_programowaniu_zwinnym_lab.ipynb b/materiały na laboratorium/08_testowanie_w_programowaniu_zwinnym_lab.ipynb index 5c7fbc5..cc55f4d 100644 --- a/materiały na laboratorium/08_testowanie_w_programowaniu_zwinnym_lab.ipynb +++ b/materiały na laboratorium/08_testowanie_w_programowaniu_zwinnym_lab.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

8. Testowanie w programowaniu zwinnym[laboratorium]

\n", "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "" ] }, { diff --git a/materiały na laboratorium/09_testowanie_integracyjne_i_systemowe_lab.ipynb b/materiały na laboratorium/09_testowanie_integracyjne_i_systemowe_lab.ipynb index a840278..5334c79 100644 --- a/materiały na laboratorium/09_testowanie_integracyjne_i_systemowe_lab.ipynb +++ b/materiały na laboratorium/09_testowanie_integracyjne_i_systemowe_lab.ipynb @@ -4,13 +4,10 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

9. Testowanie integracyjne i systemowe[laboratorium]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { diff --git a/materiały na laboratorium/12_ocena_jakości_systemu_lab.ipynb b/materiały na laboratorium/12_ocena_jakości_systemu_lab.ipynb index cb012c2..7f08cc0 100644 --- a/materiały na laboratorium/12_ocena_jakości_systemu_lab.ipynb +++ b/materiały na laboratorium/12_ocena_jakości_systemu_lab.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

Systemy informatyczne

\n", "

12. Ocena jakości systemu informatycznego[laboratorium]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { diff --git a/materiały na laboratorium/13_planowanie_prac_w_projekcie_informatycznym_lab.ipynb b/materiały na laboratorium/13_planowanie_prac_w_projekcie_informatycznym_lab.ipynb index 0e2055a..b471556 100644 --- a/materiały na laboratorium/13_planowanie_prac_w_projekcie_informatycznym_lab.ipynb +++ b/materiały na laboratorium/13_planowanie_prac_w_projekcie_informatycznym_lab.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

Systemy informatyczne

\n", "

13. Planowanie prac w projekcie informatycznym[laboratorium]

\n", - "

Krzysztof Jassem (2021)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { diff --git a/materiały na laboratorium/14_zarządzanie_pracami_w_projekcie_informatycznym.ipynb b/materiały na laboratorium/14_zarządzanie_pracami_w_projekcie_informatycznym.ipynb index 1f41fea..99d3ded 100644 --- a/materiały na laboratorium/14_zarządzanie_pracami_w_projekcie_informatycznym.ipynb +++ b/materiały na laboratorium/14_zarządzanie_pracami_w_projekcie_informatycznym.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

Systemy informatyczne

\n", "

14. Zarządzanie pracami w projeckie informatycznym[laboratorium]

\n", "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "" ] }, { @@ -19,7 +16,7 @@ "metadata": {}, "source": [ "## Plan laboratorium\n", - "Z tym wykładem nie są planowane zajęcia laboratoryjne." + "Z tym wykładem nie są planowane zajęcia laboratoryjne. Zajęcia zostaną poświęcone projektom systemów informatycznych. " ] } ], diff --git a/materiały na wykład/.ipynb_checkpoints/01_praca_zespolowa-checkpoint.ipynb b/materiały na wykład/.ipynb_checkpoints/01_praca_zespolowa-checkpoint.ipynb index cde8124..7bb55c1 100644 --- a/materiały na wykład/.ipynb_checkpoints/01_praca_zespolowa-checkpoint.ipynb +++ b/materiały na wykład/.ipynb_checkpoints/01_praca_zespolowa-checkpoint.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

1. Praca zespołowa[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { @@ -263,7 +260,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.8.5" }, "subtitle": "01. Praca zespołowa[wykład]", "title": "Przygotowanie do projektu badawczo-rozwojowego", diff --git a/materiały na wykład/.ipynb_checkpoints/07_specyfikacja_projektu_informatycznego-checkpoint.ipynb b/materiały na wykład/.ipynb_checkpoints/07_specyfikacja_projektu_informatycznego-checkpoint.ipynb index 4310913..3eee70d 100644 --- a/materiały na wykład/.ipynb_checkpoints/07_specyfikacja_projektu_informatycznego-checkpoint.ipynb +++ b/materiały na wykład/.ipynb_checkpoints/07_specyfikacja_projektu_informatycznego-checkpoint.ipynb @@ -4,21 +4,13 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

7. Specyfikacja projektu informatycznego[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [] - }, { "cell_type": "markdown", "metadata": {}, @@ -146,7 +138,7 @@ "Na podstawie listy Wykonawca-Cel, biorąc pod uwagę priorytety celów, tworzy się listę In-Out, która precyzyjnie określa zakres systemu. \n", "\n", "Przykład tabeli dla systemu Cybertest2:\n", - "\"Lista" + "\"Lista" ] }, { @@ -456,7 +448,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.8.5" }, "subtitle": "07. Specyfikacja projektu informatycznego[wykład]", "title": "Przygotowanie do projektu badawczo-rozwojowego", diff --git a/materiały na wykład/.ipynb_checkpoints/08_testowanie_w_programowaniu_zwinnym-checkpoint.ipynb b/materiały na wykład/.ipynb_checkpoints/08_testowanie_w_programowaniu_zwinnym-checkpoint.ipynb index d505b24..03fff22 100644 --- a/materiały na wykład/.ipynb_checkpoints/08_testowanie_w_programowaniu_zwinnym-checkpoint.ipynb +++ b/materiały na wykład/.ipynb_checkpoints/08_testowanie_w_programowaniu_zwinnym-checkpoint.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

8. Testowanie w programowaniu zwinnym[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { @@ -463,7 +460,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.8.5" }, "subtitle": "08. Testowanie w programowaniu zwinnym[wykład]", "title": "Przygotowanie do projektu badawczo-rozwojowego", diff --git a/materiały na wykład/.ipynb_checkpoints/09_testowanie_systemowe_i_akceptacyjne-checkpoint.ipynb b/materiały na wykład/.ipynb_checkpoints/09_testowanie_systemowe_i_akceptacyjne-checkpoint.ipynb index 46409a4..2a08257 100644 --- a/materiały na wykład/.ipynb_checkpoints/09_testowanie_systemowe_i_akceptacyjne-checkpoint.ipynb +++ b/materiały na wykład/.ipynb_checkpoints/09_testowanie_systemowe_i_akceptacyjne-checkpoint.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy dannych

\n", "

9. Testowanie systemowe i akceptacyjne[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { @@ -443,7 +440,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.8.5" }, "subtitle": "09. Testowanie integracyjne i systemowe[wykład]", "title": "Przygotowanie do projektu badawczo-rozwojowego", diff --git a/materiały na wykład/01_praca_zespolowa.ipynb b/materiały na wykład/01_praca_zespolowa.ipynb index bec3298..7bb55c1 100644 --- a/materiały na wykład/01_praca_zespolowa.ipynb +++ b/materiały na wykład/01_praca_zespolowa.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

1. Praca zespołowa[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { diff --git a/materiały na wykład/02_innowacyjny_projekt_informatyczny.ipynb b/materiały na wykład/02_innowacyjny_projekt_informatyczny.ipynb deleted file mode 100644 index c7e4806..0000000 --- a/materiały na wykład/02_innowacyjny_projekt_informatyczny.ipynb +++ /dev/null @@ -1,312 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy Informatyczne

\n", - "

2. Innowacyjny projekt informatyczny[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "Wykład składa się z: \n", - "
    \n", - "
  • części opracowanej przez doradcę inwestycyjnego z grupy fundacyjnej Speedup Group, Roberta Grygorowicza; materiały z tej części dostępne są na Teamsach\n", - "
  • części opracowanej przez Krzysztofa Jassema: skrót podany jest poniżej; slajdy podane są na Teamsach
  • \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Definicja projektu\n", - "Projekt to system działań składający się z: \n", - "- zakresu działań, \n", - "- terminu realizacji, \n", - "- zasobów potrzebnych do realizacji projektu (ludzie, kapitał, wiedza, technologia).\n", - "\n", - "Projekt innowacyjny charakteryzuje się następującymi cechami: \n", - " - niepowtarzalność,\n", - " - złożoność,\n", - " - identyfikowalność." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Przykład projektu badawczo-rozwojowego: AI Searcher\n", - "\n", - "### Definicja projektu:\n", - "System działań mających na celu stworzenie systemu informatycznego wspomagającego pracowników Polskiej Straży Granicznej. \n", - "\n", - "\n", - "### Zakres projektu: \n", - "System informatyczny wdrożony w siedzibie Straży Granicznej, który ma pomagać w znajdowaniu treści przestępczych w Internecie. \n", - "System realizuje następujący scenariusz działania:\n", - " 1. Pracownik Straży Granicznej wpisuje zapytanie.\n", - " 2. Moduł Rozszerzania Zapytań rozszerza zapytanie na zestaw kwerned do wyszukiwarek internetowych.\n", - " 3. Translator tłumaczy kwerendy na języki: rosyjski, ukraiński i białoruski.\n", - " 4. Crawler wyszukuje dokumentów w trzech językach przygranicznych i języku polskim.\n", - " 5. Translator tłumaczy znalezione teksty na język polski. \n", - " 6. Klasyfikator wybiera teksty potencjalnie przestępcze.\n", - " 7. Analizator Lingwistyczny oznacza informację dodatkową w dokumentach:\n", - " \n", - "### Termin realizacji: \n", - "grudzień 2018 - grudzień 2021\n", - "\n", - "### Zasoby:\n", - " * Ludzie: Wojskowa Akademia Techniczna, UAM, Ken-Bit https://www.kenbit.pl/\n", - " * Kapitał: dotacja z NCBR\n", - " * Wiedza: Najnowsze badania z klasyfikacji tekstu, uczenia automatycznego itp.\n", - " * Technologia: Framework do tworzenia interfejsu użytkownika, algorytmy do klasyfikacji tekstu, modele języka" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Poglądowy widok systemu AI Searcher\n", - "\"Zrzut" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Poziomy gotowości technologicznej\n", - "\n", - "### Poziom 1.\n", - "Rozpoczęto badania naukowe (np. zdefiniowano tematu pracy mgr).\n", - "### Poziom 2.\n", - "Znaleziono zastosowania badań naukowych (np. określono, na czym będzie polegał projekt mgr).\n", - "### Poziom 3.\n", - "Przeprowadzono pierwsze eksperymenty na krytycznych technologiach (np. wykonano proof-of-concept).\n", - "\n", - "### Poziom 4.\n", - "Zintegrowano podstawowe komponenty prototypu w warunkach laboratoryjnych (np. zrealizowano \"user-stories\" na komputerze dewelopera).\n", - "### Poziom 5.\n", - "Zweryfikowano działanie w warunkach zbliżónych do rzeczywistego (np. przeprowadzono testowanie prototypu wdrożónego na serwerze WMI).\n", - "### Poziom 6.\n", - "Dokonano demonstracji działania w warunkach zbliżónych do rzeczywistych (np. zademonstrowano wdrożony prototyp z interakcją użytkowników).\n", - "\n", - "### Poziom 7.\n", - "Dokonano demonstracji systemu w warunkach operacyjnych (np. zademonstrowano prototyp wdrożony u użytkownika / klienta).\n", - "\n", - "### Poziom 8.\n", - "Potwierdzono zamierzony poziom technologii w warunkach operacyjnych (np. pomyślnie zakończono testowanie akceptacyjne).\n", - "\n", - "### Poziom 9.\n", - "Stwierdzono, że wypracowana technologia odniosła zamierzony efekt (np. stwierdzono, że stosowanie rozwiązania przynosi wymierne korzyści). \n", - "\n", - "[Formalny opis poziomów gotowości technologicznej](https://archiwum.ncbr.gov.pl/fileadmin/zalewska/5_1_1_1_2018/13_poziomy_gotowosci_technologicznej.pdf)\n", - "\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Produkt High-Tech\n", - "Oczekuje się, że wynikiem innowacyjnego projektu badawczo-rozwojowego w informatyce jest produkt High-Tech.\n", - "\n", - "## Czym jest produkt High-Tech?\n", - "\n", - "### Definicja produktu\n", - "Produkt = \n", - "Zawartość + \n", - "Funkcjonalność + \n", - "Konstrukcja + \n", - "Monetyzacja \n", - "Oczekuje się zatem, że z produkt posiada jakąś zawartość (Zawartość), z której kożna korzystać (Funkcjonalność), gdyż został odpowiednio skonstruowany (Konstrukcja), ale trzeba za to płacić (Monetyzacja)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "Wyraz \"technologia\" pochodzi z języka greckiego:\n", - "
    \n", - "
  • techne: sztuka, umiejętność
  • \n", - "
  • logia: nauka (czegoś)
  • \n", - "
\n", - "\n", - "Technologia w dzisiejszym rozumieniu to zastosowanie wiedzy naukowej do stworzenia czegoś pożytecznego dla człowieka." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Czym jest produkt \"high-tech\"?\n", - "Produkt \"high tech\" to taki produkt, który wykorzystuje najnowszą wiedzę naukową i techniczną. \n", - "Produkt \"high tech\" wymaga nakładów na badania (*R&D investments*). \n", - "\n", - "R&D Investments a wartość produktu:\n", - "* Low-tech (< 1.0%);\n", - "* Medium-low-tech (1.0%-2.5%);\n", - "* Medium-high-tech (2.5%-8%); \n", - "* High-tech (>8.0%)\n", - "\n", - "### Cechy produktu \"high-tech\" z punktu widzenia inwestora\n", - "Dcydując się na wytworzenie produktu high-tech\", inwestor powinien brać pod uwagę ryzyko wynikające z następujących cech produktów tej kategorii:\n", - "* złożoność technologiczna,\n", - "* krótki cykl życia (spowodowany wyścigiem technologicznym),\n", - "* szybkie starzenie się,\n", - "* niewielka liczba klientów w początkowym stadium sprzedaży,\n", - "* duże nakłady na R&D,\n", - "* niepewności technologiczne.\n", - "\n", - "### Cechy produktu \"high-tech\" z punktu widzenia klienta\n", - "Dcydując się na zakup produktu high-tech\", klient powinien brać pod uwagę ryzyko wynikające z następujących cech produktów tej kategorii:\n", - "* dezorientacja klienta (np. jak działa produkt),\n", - "* niespełnianie oczekiwań (przez pierwsze wersje),\n", - "* duża konkurencja,\n", - "* możliwość błyskawicznego upadku rynku,\n", - "* spadająca cena produktu,\n", - "* szybki wzrost stosunku jakości do ceny.\n", - "\n", - "### Ocena ryzyka\n", - "Na 7 zaawansowanych pomysłów produktu high-tech: \n", - "* 4 wchodzą w fazę realizacji,\n", - "* 1.5 są uruchamiane,\n", - "* 1 odnosi sukces." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# \"Golden Rules\" na odniesienie sukcesu\n", - "Aby produkt high-tech miał szanse odnieść sukces na rynku, powinien spełniać przynajmniej kilka z wymienionych poniżej postulatów:\n", - "\n", - "## 1. \"Zapewnij nowatorską / wyjątkową (\"unique\") funkcję lub cechę\"\n", - "* Pomysł musi być nowatorski - a nie skopiowany.\n", - "* Taki produkt wymaga R&D...\n", - " * A to jest kosztowne i...\n", - " * Trudne w konstrukcji.\n", - "* Często pomysły chronione są przez patenty.\n", - "\n", - "\"Nowatorski\" może oznaczać \"nowy model sprzedaży\"\n", - "\n", - "## 2. \"Popraw wydajność użytkownika\"\n", - "Czego oczekujemy od systemu informatycznego:\n", - "* Wykonuj wszystko szybciej i taniej:\n", - " * Skróć czas nauki\n", - " * Automatycznie poprawiaj błędy\n", - " * Automatyzuj niektóre kroki\n", - "* Dbaj o wygodę użytkowania\n", - "* Unikaj:\n", - " * Reklam\n", - " * Przestojów na płacenie (np. bramek)\n", - " * Ogólnie: czynności, ktore pochłaniają czas użytkownika\n", - "\n", - "## 3. \"Chroń inwestycje użytkownika\"\n", - "Zasada ta mówi o tym, aby szanować pieniądze wydane przez użytkownika przed wprowadzeniem naszego rozwiązania. Dotyczy to:\n", - "* hardware'u\n", - "* software'u\n", - "* danych\n", - "\n", - "Czego oczekujemy od systemu informatycznego:\n", - "* Minimalizuj koszty zmian\n", - "* Wydłużaj czas życia produktów\n", - "* Twórz rozwiązania przenośne\n", - "\n", - "## 4. \"Minimalizuj koszty awarii lub utraty danych\"\n", - "Czego oczekujemy od systemu informatycznego:\n", - "* Unikaj przerw w działaniu\n", - "* Skracaj czas i zmniejszaj koszty przywrócenia:\n", - " * działania\n", - " * danych\n", - "\n", - "## 5. \"Poprawiaj wspólczynnik jakości do ceny\"\n", - "Czego oczekujemy od systemu informatycznego:\n", - "* Dostarczaj więcej za mniej\n", - " * Podwyższaj jakość\n", - " * Zmniejszaj cenę\n", - " * A najlepiej - obie czynności naraz\n", - " \n", - "* Jakość (wydajność) przedstawiaj w liczbach\n", - " * Gb, 100-punktowa miara jakości\n", - " * sekundy...\n", - "\n", - "## 6. \"Zapewnij elastyczność i skalowalność\"\n", - "Rozwiązanie jest **elastyczne**, jeśłi może być stosowane w różnych scenariuszach. \n", - "Rozwiązanie jest **skalowalne**, jeśli można je stsosować zarówno dla małych, jak i dużych wielkości danych.\n", - "\n", - "Czego oczekujemy od systemu informatycznego:\n", - "* Umożliwiaj dodawanie / usuwanie funkcji\n", - "* Zapewnij użycie w różnych środowiskach\n", - "* Zapewnij możliwość stosowania dla większych zbiorów danych\n", - "\n", - "## 7. \"Zadbaj o atrakcyjny wygląd\"\n", - "Rozwiązanie powinno być ładne i ...modne.\n", - "\n", - "Czego oczekujemy od systemu informatycznego:\n", - "* Weź pod uwagę:\n", - " * kolorystykę\n", - " * kształt\n", - " * wykończenie\n", - " * prostotę\n", - " \n", - "## 8. \"Dostarczaj rozrywkę\"\n", - "Czego oczekujemy od systemu informatycznego:\n", - "* \"Dzieci\" lubią się bawić - dostarczaj zabawę\n", - "* Ludzie lubią wyzwania - dostarczaj wyzwania\n", - "* Ludzie lubią rywalizację...\n", - "* Ludzie mają swoje hobby i upodobania...\n", - "* Wszyscy wolą wakacje od pracy... \n", - " \n", - "## 9. \"Stwórz nową modę\"\n", - "Stworzenie nowej mody jest niezwykle trudne i kosztowne. Ale kilku producentom się udało.\n", - "Wskazówki:\n", - "* Produkt musi być \"osobisty\".\n", - "* Musi mieć wygląd określany jako \"cool\".\n", - "* Trzeba sprzedawać go drogo...\n", - "* ... w niewielkich ilościach...\n", - "* ... ale za to robić wokół niego sporo szumu." - ] - } - ], - "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.8.5" - }, - "subtitle": "02. Projekt badawczo-rozwojowy[wykład]", - "title": "Przygotowanie do projektu badawczo-rozwojowego", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na wykład/03_prezentacja_koncepcji_projektu.ipynb b/materiały na wykład/03_prezentacja_koncepcji_projektu.ipynb deleted file mode 100644 index c27d1e5..0000000 --- a/materiały na wykład/03_prezentacja_koncepcji_projektu.ipynb +++ /dev/null @@ -1,418 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy informatyczne

\n", - "

3. Prezentacja koncepcji projektu[wykład]

\n", - "

3. Krzysztof Jassem[wykład]

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Inwestorzy\n", - "\n", - "Opracowanie i rozwój projektu B+R wymaga środków finansowych. Środki finansowe zapewnia *inwestor*, któremu trzeba odpowiednio zaprezentować koncepcję projektu B+R, czyli przekonać go, że poświęcone środki finansowe się zwrócą. \n", - "\n", - "**Inwestor** to osoba lub instytucja, która przekazuje środki finansowe na przedsięwzięcie, oczekując zwrotu i zysku. \n", - "\n", - "**Anioł biznesu** to inwestor, który dostarcza początkowe środki finansowe (seed money) na rozpoczęcie biznesu w zamian za część udziałów lub *dług zamienny*. \n", - "\n", - "**Dług zamienny** to papier wartościowy, który może zostać wymienony na akcje lub udziały firmy. \n", - "\n", - "**Kapitał wysokiego ryzyka (ang. venture capital)** to kapitał dostarczony dla istniejącej firmy typu start-up, zwykle w przemyśle HT. Kapitał wysokiego ryzyka liczy na zwrot w przypadku wyjścia firmy na giełdę lub jej sprzedaży." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Główne atrybuty produktu HT\n", - "Produkt ma wnosić **wartość dodaną**, która spełni **potrzeby klienta** dzięki dobrze przemyślanej **konstrukcji**.\n", - "\n", - "1. Wartość dodana to zestaw korzyści z punktu widzenia klienta. \n", - "\n", - "Korzyść może być: \n", - " * Funkcjonalna (produkt wykonuje pracę dla klienta) \n", - " * Emocjonalna (produkt wpływa pozytywnie na samopoczucie klienta \n", - " * Rozwijająca osobowość klienta \n", - " * Społeczna (produkt wpływa na poprawę pozycji społecznej klienta) \n", - "\n", - "2. Spełnienie potrzeby użytkowników\n", - ">“You can’t just ask customers what they want and then try to give that to them. By the time you get it built, they’ll want something new.” (Steve Jobs)\n", - "\n", - "Potrzeby użytkowników: \n", - " * Wypowiedziane (odczuwane dziś i świadome) - spełniają je przeciętne produkty;\n", - " * Ukryte (odczuwane dziś, ale nieświadome) - spełniają je produkty HT;\n", - " * Oczekiwane (odczuwane w przyszłości w sposób świadomy) - spełniają je wybitne produkty HT;\n", - " * Mające się pojawić (odczuwane w przyszłości w sposób nieświadomy) - spełniają je wizjonerskie produkty HT.\n", - "\n", - "3. Odpowiednia konstrukcja (design)\n", - "Produkt jest odpowiednio skonstruowany, jeśli ma następujące cechy:\n", - "* Pożyteczny (rozwiązuje problem lub wykonuje zadania), \n", - "* Użyteczny (łatwy w użytku, intuicyjny),\n", - "* Pożądany (wywołuje pozytywne emocje, sprawia przyjemność)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Elevator pitch\n", - "**Elevator pitch** to krótka prezentacja, ktorej celem jest zwięzłe i proste omówienie produktu lub przedsięwzięcia. Oczekuje się, że trwa niedłużej niż 2 minuty. \n", - "**Jednozdaniowy elevator pitch** to najkrótsza charakterystyka planowanego przedsięwzięcia. Ma postać: " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

DLA (określenie klienta docelowego)

\n", - "

KTÓRY (ma potrzebę)

\n", - "

NAZWA NASZEGO PRODUKTU (PRZEDSIĘWZIĘCIA)

\n", - "

TO (typ produktu / przedsięwzięcia)

\n", - "

KTÓRY (ma unikalną cechę)

\n", - "

W PRZECIWIEŃSTWIE (nazwa znanej konkurencji)

\n", - "

MA PRZEWAGĘ (typ przewagi)

\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Przykład jednozdaniowego \"elevator pitch\"

\n", - " \n", - "

(DLA) Dla każdej osoby biorącej leki lub suplementy,

\n", - "

(KTÓRA) zwłaszcza dla tych którzy mają tendencje zapominać.

\n", - "

(NAZWA PRODUKTU) Take Your Meds

\n", - "

(TO) to aplikacja mobilna,

\n", - "

(KTÓRA) która zapewni, że bez pomyłek weźmiemy wszystkie leki.

\n", - "

(W PRZECIWIEŃSTWIE) w przeciwieństwie do standardowych powiadomień na telefonie i notatek na kartce,

\n", - "

(MA PRZEWAGĘ) Take Your Meds zapewnia szczegółowe informacje i nie pozwala się pomylić.

\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prezentacja dla inwestora\n", - "### Reguła 30 / 20 / 10 (Czcionka / Minuty / Slajdy)\n", - "Reguła mówi o standardowych oczekiwaniach w stosunku do prezentacji (czyli: stosuj dużą czcionkę, nie gadaj dłużej ani krócej niż 2 minuty na slajd).\n", - "### Wzorzec 10 slajdów prezentacji dla inwestora\n", - "#### 1. Chwyć za gardło (ang. \\\"Grab\\\")\n", - " * Jaki masz pomysł?\n", - " * Czym się wyróżniasz pod względem korzyści: \n", - " * funkcjonalność, \n", - " * spełnienie potrzeby, \n", - " * konstrukcja?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Wskazówki

\n", - "\n", - "
    \n", - " \n", - "
  • Nie bądź gadatliwy!
  • \n", - "
  • Uchwyć uwagę widza!
  • \n", - "
  • Jeśli tutaj nie chwycisz widza za gardło, to przepadłeś.
  • \n", - " \n", - "
\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 2. Przedstaw problem\n", - " * Dlaczego\n", - " * Wasz produkt jest niezbędny?\n", - " * ludzie go potrzebują?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Wskazówka:

\n", - " \n", - "
    \n", - "
  • Pamiętaj: nie chodzi o Twój problem, tylko o problem potencjalnego użytkownika!
  • \n", - "
\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 3. Przedstaw rozwiązanie problemu\n", - " * Jak rozwiążecie problem ?\n", - " * Kto będzie korzystać z Waszego rozwiązania?\n", - " * I jakie będzie miał z tego korzyści?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Wskazówki:

\n", - " \n", - "
    \n", - "
  • Bądź konkretny!
  • \n", - "
  • Nie zalewaj!
  • \n", - "
  • Nie czaruj!
  • \n", - "
\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 4. Przedstaw sposób działania\n", - "* Jak działa nasze rozwiązanie?\n", - "* Co w działaniu jest takiego wyjątkowego? (\\\"magic souce\\\")?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Wskazówki:

\n", - "\n", - "
    \n", - "
  • Przekonaj, że Wasze rozwiązanie jest\n", - "
      \n", - "
    • użyteczne,\n", - "
    • funkcjonalne\n", - "
    \n", - "
  • Najlepiej przedstaw działanie wizulanie - np. na schemacie, rysunku, filmie.\n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 5. Omów technologię\n", - " * Jaka jest konstrukcja (architektura) rozwiązania?\n", - " * Co w niej jest takiego wyjątkowego?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Wskazówki:

\n", - " \n", - "
    \n", - "
  • Ponownie możesz przedstawić schemat...
  • \n", - "
  • Ale uważaj, żeby nie przesadzić ze szczegółami technicznymi!
  • \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 6. Przedstaw konkurencję\n", - " * Jakie produkty / firmy są Waszą konkurencją?\n", - " * Co robią inaczej?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Wskazówka:

\n", - " \n", - "Wykaż, że jesteście lepsi:\n", - "
    \n", - "
  • jakość,
  • \n", - "
  • cena,
  • \n", - "
  • funkcjonalność,
  • \n", - "
  • użyteczność,
  • \n", - "
  • elastyczność.
  • \n", - "
\n", - "\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 7. Określ Wasz rynek\n", - "**Rynek** to ogół transakcji kupna–sprzedaży danego dobra lub czynnika produkcji. \n", - " * Na jaki rynek kierujecie Wasz produkt?\n", - " * Jaka jest wartość finansowa rynku dla Waszego produktu?\n", - " * Total Available Market - wartość ogólnoświatowego popytu na dany produkt usługę\\,\n", - " * Served Available Market - wartość rynku, na którym chcecie działać,\n", - " * Target Market - przewidywana wartość rynku Waszych prawdopodobnych nabywców." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Wskazówki:

\n", - "\n", - "
    \n", - "
  • Możecie interpretować powyższe pojęcia w sposób potoczny:
  • \n", - "
      \n", - "
    • TAM - Jak duży jest cały tort?
    • \n", - "
    • SAM - Jak duży kawałek tortu jestem w stanie uciąć dla siebie?
    • \n", - "
    • TM - Ile jestem w stanie zjeść?
    • \n", - "
    \n", - "
  • Inwestor oczekuje, że potraficie oszacować wartość każdego zasięgu rynku na podstawie wiarygodnych źródeł.
  • \n", - "
\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 8. Zdefiniuj model biznesowy\n", - "**Model biznesowy** to unikatowy przepis na sprzedawanie produktu lub usługi.\n", - " * W jaki sposób Wasz pomysł zarobi pieniądze?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "

Wskazówka:

\n", - "\n", - "Wyjaśnij swój pomysł na sprzedaż, np.\n", - "
    \n", - "
  • licencje / sprzedaż jednorazowa,
  • \n", - "
  • sprzedaż bezpośrednia / dystrybutorzy,
  • \n", - "
  • dochody z reklam,
  • \n", - "
  • mechanizmy przyciągnięcia klienta, np. programy lojalnościowe, grywalizacja.
  • \n", - "
\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 9. Przedstaw prognozę finansową przedsięwzięcia\n", - "**Prognoza finansowa** to przewidywana wartość przyszłych wyników finansowych przesięwzięcia uwzględniająca przychody i koszty.\n", - " * Jaka jest prognoza finansowa na okres 18 miesięcy - 5 lat?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "

Wskazówki:

\n", - "
    \n", - "
  • Udowodnij, że znasz realia lub...dostosuj się do oczekiwań inwestora.
  • \n", - "
  • Kiedyś prognozę układało się na 5 lat, a dzisiaj... 5 lat to dłużej niż wieczność.
  • \n", - "
\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 10. Pochwal się zespołem\n", - " * Jakie są kluczowe osoby w Twoim zespole?,\n", - " * Skąd pochodzą?\n", - " * Jaką wartość wnoszą?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "

Wskazówki:

\n", - " \n", - "
    \n", - "
  • Można pokazać zdjęcia, jeśli ludzie się na to zgadzają.
  • \n", - "
  • Jeśli w zespole jest gwiazda, pozwól jej lśnić.
  • \n", - "
\n", - " \n", - "
" - ] - } - ], - "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": "03. Prezentacja koncepcji projektu B+R[wykład]", - "title": "Przygotowanie do projektu badawczo-rozwojowego", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na wykład/04_prezentacje_publiczne.ipynb b/materiały na wykład/04_prezentacje_publiczne.ipynb deleted file mode 100644 index 7e00297..0000000 --- a/materiały na wykład/04_prezentacje_publiczne.ipynb +++ /dev/null @@ -1,67 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Projekt badawczo-rozwojowy

\n", - "

4. Publiczne prezentacje projektów[laboratorium]

\n", - "

Krzysztof Jassem (2021)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Cel laboratorium nr 4\n", - "\n", - "Celem laboratorium będzie publiczne przedstawienie koncepcji projektu badawczo-rozwojowego." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Plan laboratorium\n", - "\n", - "Podczas laboratorium poszczególne zespoły studentów przedstawiać będą: jednozdaniowy \"elevator pitch\" oraz prezentację dotyczącą swojego pomysłu. \n", - "\n", - "Widownią będą studenci wszystkich grup projektowych. Na ocenę prezentacji będą miały wpływ odczucia widowni - zebrane za pomocą ankiet.\n", - "\n", - "Maksymalna ocena: 30 punktów" - ] - } - ], - "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.8.5" - }, - "subtitle": "01. Prezentacje publiczne[laboratorium]", - "title": "Projekt badawczo-rozwojowy", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na wykład/05_metodyki zwinne.ipynb b/materiały na wykład/05_metodyki zwinne.ipynb deleted file mode 100644 index f72163e..0000000 --- a/materiały na wykład/05_metodyki zwinne.ipynb +++ /dev/null @@ -1,622 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy informatyczne

\n", - "

5. Metodyki adaptacyjne w programowaniu[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Metodyki adaptacyjne w programowaniu (Agile Software Development)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - " Agile (zwinny) to pojęcie odnoszące się do szybkości i sprawności w działaniu i myśleniu.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Manifest Agile\n", - " * opublikowany w roku 2001\n", - " * autorzy: 17 teoretyków i praktyków programowania\n", - " * 4 wartości\n", - " * 12 zasad (pryncypiów)\n", - " \n", - " ### 4 wartości manifestu Agile\n", - " 1. Ludzie i interakcje ponad procesy i narzędzia.\n", - " 2. Działające oprogramowanie ponad szczegółową dokumentację.\n", - " 3. Współpraca z klientem ponad negocjację umów.\n", - " 4. Reagowanie na zmiany ponad podążaniem za planem.\n", - " \n", - " ### 12 pryncypiów manifestu Agile \n", - " [12 pryncypiów](https://www.agilealliance.org/agile101/12-principles-behind-the-agile-manifesto/)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 10 pryncypiów wg Kelly Watersa (All About Agile: Agile Management Made Easy!, 2012)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "1. Active User Involvement Is Imperative." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "Nic dobrego nie wynika
\n", - "Bez udziału użytkownika.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "2. Agile Development Teams Must Be Empowered." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "Nie warta praca mozołu,
\n", - "Gdy władza nie w rękach zespołu.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "3. Time waits for no man." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "Czas płynie wartko jak rzeka,
\n", - "I na nikogo nie czeka.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "4. Agile Requirements Are Barely Sufficient." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "Dosłownie w kilku dziś zdaniach
\n", - "Streścimy swe wymagania.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "5. How do you eat an elephant? One bite at a time." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "Sekretów uchylam wieczko:
\n", - "Jedz słonia małą łyżeczką.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "6. Fast but not so furious." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "Byli szybcy, lecz nie wściekli,
\n", - "I na czas produkt dowlekli.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "7. Done Means DONE!" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "Praca była \"wykonana\",
\n", - "I działało... aż do rana.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "8. Enough is enough." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "Projekt ciągle się rozrasta,
\n", - "Trzeba krzyknąć: \"Stop i Basta!\"\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "9. Agile Testing Is Not For Dummies." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "Wiedz, by dobrze móc testować,
\n", - "Twa głowa ma być pomysłowa.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "10. No place for snipers." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "Choć mocno znów cierpi Twe ego,
\n", - "Nie strzelaj - do siebie samego.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Przykład manifestu zespołu ludzi (PWN AI)\n", - "> 1. Biznes stawia **cele**, IT daje **rozwiązania**.\n", - "> 2. Wszystko da się zrobić.\n", - "> 3. Biznes wyjaśnia **potrzeby**, IT wyjaśnia **możliwości**.\n", - "> 4. **Komunikacja i zaangażowanie** – albo wyrzucanie pieniędzy w błoto.\n", - "> 5. Wszyscy jesteśmy **elastyczni**." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Metodyka SCRUM" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "Scrum jest metodyką, w której kluczowym elementem jest Sprint - faza, która kończy się działającym prototypem. Po każdym Sprincie następuje planowanie działań w kolejnym Sprincie - biorące pod uwagę dotychczasowe doświadczenia.\n", - " \n", - "
\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Struktura metodyki Scrum opiera się na trzech filarach:\n", - "* Artefakty\n", - "* Role\n", - "* Cykl Pracy" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Artefakty w metodyce Scrum" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "
Rejestr Produktu (Product Backlog)
\n", - "\n", - " Rejestr Produktu to lista zadań do wykonania w projekcie ułożona według priorytetu wykonania.\n", - "\n", - "
    \n", - "
  1. Rejestr produktu utrzymywany jest przez Właściciela Produktu.
  2. \n", - "
  3. Zadania, których efekt widoczny jest dla użytkownika mają często postać User Story .
  4. \n", - "
  5. Zadania o najniższym priorytecie mogą być usuwane z Rejestru Produktu.
  6. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "
User Story
\n", - "\n", - "> User story to krótki opis wybranej funkcjonalności, napisany z punktu widzenia docelowego użytkownika danego produktu (Encyklopedia Zarządzania).\n", - "\n", - "User Story ma zwykle postać: \n", - "> Jako chcę wykonać aby\n", - "\n", - "
Przykład User Story
\n", - " \n", - "> Jako klient sklepu chcę dodać produkt do koszyka aby go później kupić .\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "
Rejestr Sprintu (Sprint Backlog)
\n", - "\n", - " Rejestr Sprintu to lista Zadań do wykonania podczas Sprintu:\n", - "\n", - "
    \n", - "
  1. utrzymywana przez Zespół Deweloperski,
  2. \n", - "
  3. tworzona na początku każdego Sprintu przez Zespół Deweloperski na podstawie priorytetowego zadania z Rejestru Produktu.
  4. \n", - "
\n", - "
\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "
Zadanie (Task)
\n", - "\n", - " Zadanie w Rejestrze Sprintu zawiera następujące informacje:\n", - "\n", - "
    \n", - "
  1. opis zadania,
  2. \n", - "
  3. szacowany czas wykonania zadania,
  4. \n", - "
  5. członek zespołu odpowiedzialnego za wykonanie zadania,
  6. \n", - "
  7. status danego zadania (np. jeden z trzech: oczekuje na realizację/w trakcie realizacji/wykonane).
  8. \n", - "
\n", - "
\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Role w metodyce Scrum" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "
Udziałowcy (stakeholders)
\n", - "Udziałowcy to ludzie, którzy finansują projekt:\n", - "
    \n", - "
  1. właściciele firmy realizującej projekt,
  2. \n", - "
  3. klienci,
  4. \n", - "
  5. przyszli użytkownicy.
  6. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "
Właściciel Produktu (Product Owner)
\n", - "\n", - " Właściciel Produktu to rola, która reprezentuje interesy biznesu.\n", - "\n", - "
Zadania Właściciela Produktu:
\n", - "\n", - "
    \n", - "
  1. nadzoruje pisanie User Stories,
  2. \n", - "
  3. analizuje na bieżąco potrzeby biznesu i na tej podstawie...
  4. \n", - "
  5. ustala priorytet User Stories w Rejestrze Produktu,
  6. \n", - "
  7. decyduje, co jest WYKONANE.
  8. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "
Zespół Deweloperski (Development Team)
\n", - " \n", - "Zespół Deweloperski to zespół wykonawców oprogramowania, zazwyczaj składający się z kilku osób (3-9), o równych prawach.\n", - " \n", - "
Zadania Zespołu Deweloperskiego:
\n", - "\n", - "
    \n", - "
  1. jest odpowiedzialny za implementację,
  2. \n", - "
  3. na podstawie priorytetów Właściciela produktu określa zadania na kolejny sprint,
  4. \n", - "
  5. wykonuje cały proces: analiza, programowanie, testowanie (dzienniku produktu),
  6. \n", - "
  7. sam decyduje o sposobie realizacji zadań.
  8. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "
Scrum Master
\n", - "\n", - "Scrum Master to członek zespołu deweloperskiego, mający dobre zrozumienie ideologii SCRUM.\n", - "\n", - "
Zadania Scrum Mastera:
\n", - "
    \n", - "
  1. prowadzi Daily (spotkanie zespołu),
  2. \n", - "
  3. prowadzi Retrospektywę,
  4. \n", - "
  5. buduje relacje w zespole,
  6. \n", - "
  7. pomaga rozwiązywać konflikty,
  8. \n", - "
  9. pośredniczy w rozmowach z Właścicielem produktu.
  10. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Cykl pracy w metodyce Scrum" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "
Sprint
\n", - "\n", - " Sprint to okres, podczas którego tworzy się przyrost projektu, skutkujący prototypem gotowym do użycia. Sprint zazwyczaj trwa nie krócej niż tydzień i nie dłuzej niż miesiąc.\n", - "W skład Sprintu wchodzą:\n", - "
    \n", - "
  1. Planowanie Sprintu,
  2. \n", - "
  3. Implementacja,
  4. \n", - "
  5. Codzienne spotkania,
  6. \n", - "
  7. Przegląd Sprintu,
  8. \n", - "
  9. Retrospektywa.
  10. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "
Planowanie Sprintu (Sprint Planning)
\n", - "\n", - " Planowanie sprintu jest pierwszym spotkaniem podczas każdego sprintu. \n", - "\n", - "
    \n", - "
  • Planowanie Sprintu bierze udział Zespół Deweloperski oraz opcjonalnie Właściciel Produktu.
  • \n", - "
  • Planowanie Sprintu prowadzone jest przez Scrum Mastera.
  • \n", - "
\n", - "\n", - "
Standardowy przebieg Planowania Sprintu:
\n", - "
    \n", - "
  1. Analizy Rejestru Produktu - wybór wymagań do realizacji,
  2. \n", - "
  3. Określenie celu sprintu - na podstawie wybranych wymagań,
  4. \n", - "
  5. Określenie pełnego zakresu prac: jak będzie działał system po Sprincie,
  6. \n", - "
  7. Stworzenie Rejestru Sprintu: podział zakresu prac na zadania i przydzielenie członków zespołu do zadań,
  8. \n", - "
  9. Estymacja pracochłonności zadań.
  10. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "
Codzienne Spotkania (Daily Scrum)
\n", - "\n", - " Codzienne Spotkanie (stosowana nazwa w j. polskim - Daily ) to codzienne zdarzenie, które trwa do piętnastu minut w stałym miejscu i o stałej porze. \n", - "\n", - "
    \n", - "
  • W Daily bierze udział Zespół Deweloperski.
  • \n", - "
  • Daily prowadzone jest przez Scrum Mastera.
  • \n", - "
\n", - " \n", - "
Standardowy plan Daily:
\n", - "\n", - "
    \n", - "
  1. Przegląd prac w ciągu ostatniego dnia,
  2. \n", - "
  3. Omówienie pojawiających się problemów,
  4. \n", - "
  5. Omówienie planu na kolejny dzień.
  6. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "
Przegląd Sprintu
\n", - "\n", - " Przegląd Sprintu jest spotkaniem organizowanym na zakończenie Sprintu w celu zweryfikowania wykonania zadań w Sprincie i dostosowania Rejestru Produktu. \n", - "\n", - "
    \n", - "
  • W Przeglądzie Sprintu bierze udział Zespół Deweloperski, Właściciel Produktu oraz Udziałowcy zaproszenieni przez Właściciela Produktu.
  • \n", - "
  • Przegląd Sprintu prowadzony jest przez Właściciela Produktu.
  • \n", - "
\n", - " \n", - "
Standardowy plan Przeglądu Sprintu:
\n", - "\n", - "
    \n", - "
  1. Właściciel Produktu wyjaśnia Udziałowcom, które funkcjonalności zostały \"Wykonane”, a które nie.
  2. \n", - "
  3. Zespół Deweloperski omawia zadania w Sprincie, jakie były problemy oraz jak je rozwiązano.
  4. \n", - "
  5. Zespół Deweloperski prezentuje \"Wykonaną” pracę; dyskusja.
  6. \n", - "
  7. Właściciel Produktu omawia obecny Rejestr Produktu.
  8. \n", - "
  9. Uczestnicy omawiają kolejne kroki pracy pod kątem potrzeb biznesu.\n", - "
  10. Właściciel produktu aktualizuje Rejestr Produktu.\n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "
Retrospektywa Sprintu
\n", - "\n", - " Retrospektywa Sprintu to spotkanie po Przeglądzie Sprintu w celu opracowania usprawnień na następny Sprint. \n", - "\n", - "
    \n", - "
  • W Retrospektywie udział bierze Zespół Deweloperski.
  • \n", - "
  • Retrospektywę prowadzi Scrum Master.
  • \n", - "
\n", - " \n", - "
Standardowy plan Retrospektywy:
\n", - "\n", - "
    \n", - "
  1. Sprawdzenie, co działo się w ostatnim Sprincie,
  2. \n", - "
  3. Zidentyfikowanie elementów, które sprawdziły się w działaniu,
  4. \n", - "
  5. Zidentyfikowanie elementów, które kwalifikują się do usprawnienia,
  6. \n", - "
  7. Stworzenie planu wprowadzania w życie usprawnień.
  8. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Wniosek\n", - "Nie zrobi informatyk \n", - "Złotego interesu, \n", - "Gdy nie będzie co tydzień \n", - "Słuchał potrzeb biznesu." - ] - } - ], - "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.8.5" - }, - "subtitle": "05. Metodologia Prince2Agile[wykład]", - "title": "Przygotowanie do projektu badawczo-rozwojowego", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na wykład/06_prototypowanie i ciągła integracja.ipynb b/materiały na wykład/06_prototypowanie i ciągła integracja.ipynb deleted file mode 100644 index f1a6b4f..0000000 --- a/materiały na wykład/06_prototypowanie i ciągła integracja.ipynb +++ /dev/null @@ -1,479 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy informatyczne

\n", - "

6. Prototypowanie i ciągła integracja[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Prototyp

\n", - "Prototyp to wynik częściowej implementacji, posiadający wybrane cechy produktu końcowego.\n", - "\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Cele prototypowania\n", - " * Zademonstrowanie umiejętności wykonania produktu końcowego\n", - " * Określenie realistycznych wymagań końcowych\n", - " * Przekonanie się o wpływie innych systemów, środowisk na produkt. \n", - " * Sprawdzenie implementacji kluczowych funkcji\n", - "\n", - "## Potencjalne efekty prototypowania\n", - "* Wykrycie nieporozumień między klientem i wykonawcą \n", - "* Określenie brakujących funkcji \n", - "* Wykrycie błędów w specyfikacji\n", - "* Przewidywanie przyszłych trudności " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prototyp poziomy a pionowy\n", - "### Prototyp poziomy (Horizontal Prototype)\n", - "\n", - "**Prototyp poziomy** obrazuje całość systemu, podkreślając interakcję z użytkownikiem, a nie wnikając w funkcjonalności.\n", - "\n", - "Przykłady prototypów poziomych w informatyce:\n", - " * Prototyp papierowy\n", - " * Makieta statyczna\n", - " * Makieta dynamiczna\n", - " * Graficzny interfejs użytkownika" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Prototyp papierowy

\n", - " \n", - "Prototyp papierowy to sposób reprezentacji produktu cyfrowego za pomocą wycinanek z papieru. \n", - " \n", - "* Służy do zrozumienia koncepcji produktu cyfrowego przez użytkownika. \n", - "* Dla autora koncepcji prototyp taki służy do prześledzenia reakcji użytkowników na przyszłe działanie systemu przed jego realizacją.\n", - "\n", - "Prototypowanie papierowe - etapy :\n", - "\n", - "
    \n", - "
  • Naszkicowanie wstępnej koncepcji ekranów z wyróżnieniem głównych funkcjonalności.
  • \n", - "
  • Symulowanie interakcji poprzez podmienianie papierowych ekranów i wyciętych elementów.
  • \n", - "
\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Makieta statyczna

\n", - " \n", - " \n", - "Makieta statyczna to cyfrowy projekt aplikacji, który zawiera pewne elementy docelowej konstrukcji, ale nie jest funkcjonalny. \n", - "\n", - "
    \n", - "
  • Obrazuje wybrane widoki bez połączeń między nimi.
  • \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Makieta dynamiczna

\n", - " \n", - " \n", - "Makieta dynamiczna to cyfrowy projekt aplikacji, który zawiera pewne elementy docelowej konstrukcji i wskazuje interakcje z użytkownikiem. \n", - "\n", - "
    \n", - "
  • Widoki są \"klikalne\" - po kliknięciu użytkowniki kierowany jest do nowego widoku.
  • \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Graficzny interfejs użytkownika (GUI)

\n", - "\n", - " Graficzny interfejs użytkownika to sposób komunikacji użytkownika z komputerem za pomocą elementów graficznych.\n", - " \n", - "Prototypem poziomym nazwiemy GUI, który: \n", - "
    \n", - "
  • Pokazuje menu.
  • \n", - "
  • Pozwala na nawigację.
  • \n", - "
  • Akceptuje input.
  • \n", - "
  • Wyświetla losowy output.
  • \n", - "
  • NIE wspiera logiki aplikacji.
  • \n", - "
\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Prototyp pionowy (Vertical Prototype)\n", - "**Prototyp pionowy** to pełna realizacja kluczowej (kluczowych) funkcji systemu.\n", - "\n", - "Cele prototypowania pionowego:\n", - "* sprawdzenie wyboru technologii\n", - "* pomiary wydajności\n", - "* sprawdzenie poprawności algorytmów i struktur danych\n", - "\n", - "Realizacja prototypów pionowych jest polecana w sytuacji, gdy wykonanie kluczowych funkcji systemu obarczone jest wysokim ryzykiem." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prototypowanie z porzuceniem a prototypowanie ewolucyjne" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Prototypowanie z porzuceniem (Thow-away Prototyping)\n", - "\n", - "W **prototypowaniu z porzuceniem** budowane są kolejne wersje prototypów, a niektóre z nich są porzucane.\n", - "\n", - "Cele prototypowania z porzuceniem:\n", - "* minimalizacja ryzyka,\n", - "* głębokie zrozumienie problemów technicznych\n", - "\n", - "Koszty:\n", - " * Koszty prototypowania z porzuceniem są wysokie." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Prototypowanie ewolucyjne (Ewolutionary Prototyping)\n", - "\n", - "**Prototypowanie ewolucyjne** polega na stopniowym rozszerzaniu prototypu, aż spełnia on wszystkie wymagania... \n", - "\n", - "...Wtedy prototyp staje się produktem.\n", - "\n", - "Prototyp ewolucyjny powinien być budowany:\n", - " * w środowisku zbliżonym do produkcyjnego, \n", - " * z dużą dbałością o jakość." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prototypowanie - podsumowanie\n", - "\n", - "* Prototypy tworzy się w celu zminimalizowania ryzyka niepowodzenia produktu. \n", - "* W prototypach poziomych chodzi o zobrazowanie wszystkich funkcji. \n", - "* W prototypach pionowych chodzi o szczegóły techniczne.\n", - "* Prototypowanie z porzuceniem oywa się z reguły wszerz (prototypy poziome); \n", - " * jest bardziej kosztowne, ale minimalizuje ryzyko.\n", - "* Prototypowanie ewolucyjne odbywa się z reguły w głąb (prototypy pionowe); \n", - " * jest mniej kosztowne, ale bardziej ryzykowne." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Ciągła integracja

\n", - " \n", - "Ciągła integracja (CI) to praktyka rozwoju oprogramowania, w której:\n", - "
    \n", - "
  • zmiany w kodzie są regularnie przesyłane do centralnego repozytorium,
  • \n", - "
  • po każdym dołączeniu nowego kodu wykonywane są (automatycznie): kompilacja kodu i testy.
  • \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - " \n", - "

Główne przesłanki CI

\n", - " \n", - "Ciągła integracja (CI) to praktyka rozwoju oprogramowania, w której:\n", - "
    \n", - "
  • szybsze lokalizowanie błędów w kodzie,
  • \n", - "
  • ciągły wzrost jakości oporgramowania,
  • \n", - "
  • szybkie wydawanie nowych wersji.
  • \n", - "
\n", - "
\n", - "\n", - " \n", - "\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Schemat CI/CD](obrazy/cicd.drawio.png \"Schemat CI/CD\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Przebieg pracy w Ciągłej Integracji\n", - "1. **Take Integrated Code**\n", - " * Pobieram kod z repozytorium.\n", - " * Instaluję kopię na swojej stacji roboczej. \n", - " \n", - "2. **Do Your Part**\n", - " * Opracowuję nowy kod.\n", - " * Opracowuję nowe testy jednostkowe.\n", - " \n", - "3. **Build on your machine**\n", - "\n", - " * **Repeat** \n", - " * Kompiluję swój kod i buduję wersję wykonywalną,\n", - " * Przeprowadzam testy jednostkowe,\n", - " * **Until**\n", - " * Kod się skompilował poprawnie oraz\n", - " * Testy zakończyły się powodzeniem.\n", - " \n", - "4. **Integrate with Repository**\n", - "\n", - " * Przesyłam kod do repozytorium centralnego, skąd przesyłany jest do kompilacji i testów.\n", - " * Przypadek 1. W międzyczasie ktoś dodał swój kod do repozytorium. Kompilacja lub testy się nie powodzą.\n", - " * **Go back to: Take Integrated Code**\n", - " * Przypadek 2. Tetsy się powodzą\n", - " * **Continue**\n", - " \n", - "5. **End Session**\n", - " * Gdy powiodły się wszystkie testy, mogę zakończyć sesję." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Dobre praktyki Ciągłej Integracji\n", - "(wg https://www.martinfowler.com/articles/continuousIntegration.html)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Maintain a Single Source Repository\n", - " * Załóż mainline (linię główną): \n", - " * Deweloperzy powinni większość pracy składać na mainline.\n", - " * Nie nadużywaj odgalęzień (branchów). Jeśli już, to tylko w celu:\n", - " * naprawy błędów,\n", - " * tymczasowych eksperymentów,\n", - " * oznaczania wersji publikowalnych.\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Automate the Build\n", - " * Wersja wykonywalna powinna być tworzona jednym poleceniem.\n", - " * Dotyczy to zarówno repozytorium centralnego, jak i maszyn lokalnych." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Test Yourself\n", - " * Pisz testy jednostkowe.\n", - " * Uruchamiaj testy po każdej kompilacji." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Everyone Commits Everyday\n", - " * Każdy powinien \"codziennie\" wypychać swój kod do linii głównej.\n", - " * Umożliwia to wczesne wykrywanie konfliktów, gdyż...\n", - " * Im wcześniej wykryje się konflikt, tym łatwiej go naprawić.\n", - " * Postulat wymaga rozbicia projektu na małe kawałki." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Every Commit Should Build the Mainline\n", - " * Nie odchodzisz od pracy z repozytorium, aż Twój kod nie przeszedł pełnych testów.\n", - " * Korzystaj z systemów ciągłej integracji (Cruise Control, Jenkins)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Fix the Broken Builds Immediately\n", - "Co zrobić, jeśli jednak kod na \"mainline\" się nie buduje? \n", - "Znalezienie i poprawienie blędu jest priorytetem, ale:\n", - " * Nie debugguj kodu na centralnym repozytorium. \n", - " * Przywróć wersję wykonywalną na \"mainline\".\n", - " * Debugguj kod na maszynie lokalnej." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Make it Easy to Run the Latest Executable\n", - "* Każdy członek zespołu (nie tylko deweloper) powinien mieć możliwość łatwego uruchomienia ostatniej wersji stabilnej.\n", - "* Jest to niezbędne do:\n", - " * testowania integracyjnego (tester),\n", - " * rozmów z klientem (zarząd lub sprzedawca),\n", - " * prowadzenia projektu (kierownik zespołu).\n", - "* W specjalnej lokalizacji przetrzymuj wersje stabilne - \"do pokazania\"." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Keep the Build Fast\n", - "\n", - " * Maximum 10 minut na build + testy.\n", - " * A jeśli testy trwają dłużej?\n", - " * Testy dwuetapowe:\n", - " * kompilacja + testy jednostkowe przy każdym commicie,\n", - " * testy integracyjne co pewien czas (np. po commicie wszystkich deweloperów)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Clone the Environment\n", - " * Przygotuj klon środowiska produkcyjnego:\n", - " * ta sama wersja systemu operacyjnego\n", - " * ta sama baza danych\n", - " * te same biblioteki (nawet jak ich nie potrzebujesz) \n", - " * Wszystkie testy przeprowadzaj na przygotowanym środowisku." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Everyone Can See What's Happening\n", - "System powinien informować użytkowników o swoim statusie." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Automate Deployment\n", - " * Zautomatyzowanie wdrożenia polega na napisaniu skryptów, które instalują system w docelowym środowisku.\n", - " * Pozwala to na szybką reakcję, gdy \"coś się dzieje\". " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Narzędzia Ciągłej Integracji\n", - "\n", - "https://www.katalon.com/resources-center/blog/ci-cd-tools/\n", - "\n", - "1. Jenkins\n", - "2. Circle CI\n", - "3. Team City\n", - "4. Bamboo\n", - "5. GitLab" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Korzyści z Ciągłej Integracji\n", - " * Minimalizacja ryzyka\n", - " * Łatwiejsze szacowanie terminu zakończenia prac\n", - " * Szybsza lokalizacja i naprawa błędów\n", - " * Świadomość stanu prac u całego zespołu\n", - " * Możliwość kontynuowania prac w przypadku odejścia dewelopera\n", - " * Możliwość pracy w środowisku rozproszonym\n", - " * Możliwość usunięcia bariery między wykonawcą i klientem" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Przykład - Jenkins\n", - "\n", - "https://git.wmi.amu.edu.pl/filipg/paper-cutter/src/branch/master/Jenkinsfile\n", - "\n" - ] - } - ], - "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": "06. Prototypowanie i ciągła integracja[wykład]", - "title": "Przygotowanie do projektu badawczo-rozwojowego", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/materiały na wykład/07_specyfikacja_projektu_informatycznego.ipynb b/materiały na wykład/07_specyfikacja_projektu_informatycznego.ipynb index 89d2fd2..3eee70d 100644 --- a/materiały na wykład/07_specyfikacja_projektu_informatycznego.ipynb +++ b/materiały na wykład/07_specyfikacja_projektu_informatycznego.ipynb @@ -4,21 +4,13 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

7. Specyfikacja projektu informatycznego[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "
" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [] - }, { "cell_type": "markdown", "metadata": {}, diff --git a/materiały na wykład/08_testowanie_w_programowaniu_zwinnym.ipynb b/materiały na wykład/08_testowanie_w_programowaniu_zwinnym.ipynb index d505b24..03fff22 100644 --- a/materiały na wykład/08_testowanie_w_programowaniu_zwinnym.ipynb +++ b/materiały na wykład/08_testowanie_w_programowaniu_zwinnym.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

8. Testowanie w programowaniu zwinnym[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "
" ] }, { @@ -463,7 +460,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.8.5" }, "subtitle": "08. Testowanie w programowaniu zwinnym[wykład]", "title": "Przygotowanie do projektu badawczo-rozwojowego", diff --git a/materiały na wykład/09_testowanie_systemowe_i_akceptacyjne.ipynb b/materiały na wykład/09_testowanie_systemowe_i_akceptacyjne.ipynb index 46409a4..2a08257 100644 --- a/materiały na wykład/09_testowanie_systemowe_i_akceptacyjne.ipynb +++ b/materiały na wykład/09_testowanie_systemowe_i_akceptacyjne.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy dannych

\n", "

9. Testowanie systemowe i akceptacyjne[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { @@ -443,7 +440,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.8.5" }, "subtitle": "09. Testowanie integracyjne i systemowe[wykład]", "title": "Przygotowanie do projektu badawczo-rozwojowego", diff --git a/materiały na wykład/10_wybrane_zagadnienia_użyteczności.ipynb b/materiały na wykład/10_wybrane_zagadnienia_użyteczności.ipynb index f035cb6..fa3316b 100644 --- a/materiały na wykład/10_wybrane_zagadnienia_użyteczności.ipynb +++ b/materiały na wykład/10_wybrane_zagadnienia_użyteczności.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Przygotowanie do projektu badawczo-rozwojowego

\n", + "

Systemy informatyczne analizy danych

\n", "

10. Wybrane zagadnienia użyteczności[wykład]

\n", - "

Krzysztof Jassem (2021)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { @@ -58,7 +55,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -143,7 +139,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -189,7 +184,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -198,7 +192,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -209,7 +202,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -221,7 +213,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -231,7 +222,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -250,7 +240,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -277,7 +266,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -303,7 +291,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -318,7 +305,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -339,7 +325,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -353,7 +338,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -435,7 +419,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -493,7 +476,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -511,7 +493,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ @@ -535,7 +516,6 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ diff --git a/materiały na wykład/11_aspekty_użyteczności.ipynb b/materiały na wykład/11_aspekty_użyteczności.ipynb index 84b6507..fcb72b0 100644 --- a/materiały na wykład/11_aspekty_użyteczności.ipynb +++ b/materiały na wykład/11_aspekty_użyteczności.ipynb @@ -4,14 +4,10 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", "

Systemy informatyczne

\n", "

11. Aspekty użyteczności[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { @@ -681,7 +677,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.8.5" }, "subtitle": "11. Aspekty użyteczności[wykład]", "title": "Przygotowanie do projektu badawczo-rozwojowego", diff --git a/materiały na wykład/12_ocena_jakości_systemu.ipynb b/materiały na wykład/12_ocena_jakości_systemu.ipynb index 21e4477..c7c59a1 100644 --- a/materiały na wykład/12_ocena_jakości_systemu.ipynb +++ b/materiały na wykład/12_ocena_jakości_systemu.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", - "

Systemy informatyczne

\n", + "

Systemy informatyczne analizy danych

\n", "

12. Ocena jakości systemu informatycznego[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { diff --git a/materiały na wykład/13_planowanie_prac_w_projekcie_informatycznym.ipynb b/materiały na wykład/13_planowanie_prac_w_projekcie_informatycznym.ipynb index ac32517..6433864 100644 --- a/materiały na wykład/13_planowanie_prac_w_projekcie_informatycznym.ipynb +++ b/materiały na wykład/13_planowanie_prac_w_projekcie_informatycznym.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

Systemy informatyczne

\n", "

13. Planowanie prac w projekcie informatycznym[wykład]

\n", - "

Krzysztof Jassem (2022)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { diff --git a/materiały na wykład/14_zarządzanie_pracami_w_projekcie_informatycznym.ipynb b/materiały na wykład/14_zarządzanie_pracami_w_projekcie_informatycznym.ipynb index c2f07e6..c4a6efa 100644 --- a/materiały na wykład/14_zarządzanie_pracami_w_projekcie_informatycznym.ipynb +++ b/materiały na wykład/14_zarządzanie_pracami_w_projekcie_informatycznym.ipynb @@ -4,14 +4,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", "
\n", "

Systemy informatyczne

\n", "

14. Zarządzanie projektem informatycznym[wykład]

\n", - "

Krzysztof Jassem (2021)

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + "

Krzysztof Jassem (2023)

\n", + "" ] }, { diff --git a/materiały na wykład/metodologia_Prince2 (wykład dodatkowy).ipynb b/materiały na wykład/metodologia_Prince2 (wykład dodatkowy).ipynb deleted file mode 100644 index adf734d..0000000 --- a/materiały na wykład/metodologia_Prince2 (wykład dodatkowy).ipynb +++ /dev/null @@ -1,1019 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", - "
\n", - "

Systemy informatyczne

\n", - "

0. Metodologia Prince2[wykład]

\n", - "
\n", - "\n", - "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "# Metodologia Prince2 - wyjaśnienie pojęcia\n", - "Prince2 (PRojects IN Controlled Environments) to metoda **zarządzania** ***projektami***\n", - "niezależna od zmiennych projektu, takich jak: \n", - " * środowisko, \n", - " * skala, \n", - " * typ, \n", - " * organizacja, \n", - " * kultura, \n", - " * położenie geograficzne." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "# 1. Pojęcie projektu" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "

Projekt

\n", - "Projekt to organizacja założona:\n", - " \n", - "

na określony czas

\n", - "

w celu dostarczenia rozwiązania

\n", - "

dla określonej potrzeby biznesowej.

\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "

Przykład projektu

\n", - " \n", - "

Potrzeba biznesowa: Oszczędzenie 70% czasu biura obsługi klienta.

\n", - "

Rozwiązanie: System automatycznego obiegu dokumentów.

\n", - "

Czas: 6 miesięcy

\n", - "

Projekt: Zespół ludzi wydelegowanych na 6 miesięcy dla dostarczenia systemu automatycznego obiegu dokumentów w celu zaoszczędzenia 70% czasu biura obsługi klienta.

\n", - "
\n" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### Cechy charakterystyczne projektu\n", - "Projekt jest przeciwieństwiem pojęcia \"business as usual\" (działanie rutynowe). Projekt od rutyny odróżniają następujące cechy:\n", - "\n", - " * **Zmiana** - projekt to środek do przeprowadzenia zmiany.\n", - " * **Tymczasowość** - projekt ma swoją datę początku i końca.\n", - " * **Wielofukcyjność** - przy projektach zaangażowani są ludzie o różnych kompetencjach.\n", - " * **Wyjątkowość** - każdy projekt jest wyjątkowy (nawet jak jest jakiś wzorzec projektu, to każdy projekt się czymś wyróżnia: albo zespołem, albo klientem, albo położeniem geograficznym, itp.\n", - " * **Niepewność** - projekty ze swojej natury są ryzykowne, bo mają wprowadzić zmianę." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### Zarządzanie projektem\n", - " Zarządzanie projektem to:\n", - " - planowanie zadań,\n", - " - delegowanie ludzi do zadań,\n", - " - monitorowanie wykonywania zadań,\n", - " - kontrolowanie\n", - " aby:\n", - " - osiągnąć cel projektu,\n", - " - w wyznaczonym czasie,\n", - " - przy zachowaniu przeznaczonych kosztów." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### Aspekty kontroli w zarządzaniu projektem\n", - " Projekt należy kontrolować pod następującymi aspektami:\n", - " - koszty (czy przestrzegamy kosztów projektu?),\n", - " - czas (kiedy skończymy?),\n", - " - jakość (czy produkt spełnia oczekiwania jakościowe?),\n", - " - zakres (czy zakres działania projektu będzie pokrywa się z oczekiwaniami?),\n", - " - korzyści dla klienta (czy użytkownik naszego produktu uzyskuje planowaną korzyść?),\n", - " - ryzyko (jakie jest ryzyko niepowodzenia lub niepożądanych skutków projektu i czy potrafimy to ryzyko zminimalizować?)." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "# 2. Przegląd metodologii zarządzania projektem \n", - "(por. https://startnearshoring.com/knowledge/it-project-management-a-quick-guide-to-tools-and-methodologies/)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "## 2.1. Metodologie tradycyjne\n", - "Metodologie tradycyjne charakteryzują się działaniem \"krok po kroku\". Kładą nacisk na:\n", - " * skrupulatne zbieranie wymagań,\n", - " * dokładną analizęm\n", - " * istotność dokumentacji.\n", - " \n", - "Sprawdzają się w projektach z dobrze określonymi wymaganiami już od początku. \n", - "\n", - "Produkt ma być realizowany i dostarczony zgodnie z określonym planem. W planowaniu **nie** analizuje się szczegółowo, w jaki sposób produkt ma być wykonany. " - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "### Waterfall (model kaskadowy) (wg Wikipedia)\n", - "> Model polega on na wykonywaniu podstawowych czynności jako odrębnych faz projektowych, kolejno po sobie. Jeśli któraś z faz nie powodzi się, to następuje nawrót do poprzedniej fazy. Każda czynność to schodek (kaskady):\n", - "> * Planowanie systemu (w tym specyfikacja wymagań).\n", - "> * Analiza systemu (w tym analiza wymagań i studium wykonalności).\n", - "> * Projekt systemu (poszczególnych struktur itp.).\n", - "> * Implementacja (wytworzenie kodu).\n", - "> * Testowanie (poszczególnych elementów systemu oraz elementów połączonych w całość).\n", - "> * Wdrożenie i pielęgnacja powstałego systemu.\n", - "\n", - "Model kaskadowy sprawdza się dla małych, krótkich projektów z ustalonymi wymaganiami, które nie mogą zmienić się w trakcie realizacji projektu." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "
Plusy modelu kaskadowego
\n", - "
    \n", - "
  1. Projekty są dobrze określone, a zatem łatwe w zarządzaniu.
  2. \n", - "
  3. Przebieg projektu opisany jest liniowo (sekwencyjnie), przez co łatwiej go zrozumieć.
  4. \n", - "
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "
Minusy modelu kaskadowego
\n", - "
    \n", - "
  1. Dokonanie wszelkich zmian w projekcie jest kosztowne.
  2. \n", - "
  3. Jakikolwiek namacalny efekt działań jest widoczny dopiero po dłuższym czasie.
  4. \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "### Prince2\n", - "W metodyce Prince2 projekt dzielony jest na **etapy**. Po każdym etapie następuje uszczegółowienie planu najbliższych etapów.\n", - "\n", - "W Prince2 nacisk kładzie się na osiągnięcie założonych **produktów biznesowych**.\n", - "\n", - "**Struktura organizacyjna** jest precyzyjnie określona - każdy członek teamu ma przypisaną rolę. \n", - "\n", - "Ważną rolę odgrywają **procedury raportowania**." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "
Plusy modelu Prince2
\n", - "
    \n", - "
  1. Podział projektu na etapy ułatwia kontrolę nad projektem (sprawdzamy, czy na końcu etapu mamy planowany rezultat).
  2. \n", - "
  3. Dobrze dokumentuje przebieg projektu.
  4. \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "
Minusy modelu Prince2
\n", - "
    \n", - "
  1. Każda zmiana wymaga \"łańcucha akceptacji\" i wymusza zmiany w dokumentacji.
  2. \n", - "
  3. Tworzenie obszernej dokumentacji jest pracochłonne.
  4. \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "### PMBOK (Project Management Body of Knowledge)\n", - "Projekt ma swój **cykl życia**, który składa się z ciągu etapów lub faz od inicjacji do zamknięcia. \n", - "\n", - "W cyklu życia projektu odbywają się różnego rodzaju **procesy**, które na siebie oddziaływują. \n", - "\n", - "Wyróżnia się nawet 49 różnych rodzajów procesów, podzielonych na **grupy**:\n", - " * procesy rozpoczęcia (inicjowania) - zdefiniowanie nowego projektu (lub nowej fazy w istniejącym projekcie),\n", - " * procesy planowania - określenie zakresu i celu projektu, zdefiniowanie akcji prowadzących do realizacji celu,\n", - " * procesy realizacji - realizacja wymagań projektowych,\n", - " * procesy monitorowania i kontroli - śledzenie, przeglądanie postępu oraz wydajności prac projektowych; ewentualnie inicjacja zmian w planie,\n", - " * procesy zakończenia (zamknięcia) - formalne zakończenie projektu.\n", - "\n", - "Procesy połączone są ze sobą wkładami i rezultatami. Rezultaty z jednego procesu mogą być wkładem do następnych. \n", - "\n", - "PMBOX oferuje wiele różnych procesów do wyboru. Zadaniem menadżera projektu jest wybór procesów odpowiednich do projektu. " - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "
Plusy modelu PMBOK
\n", - "
    \n", - "
  1. Podczas trwania projektu można dodawać nowe narzędzia i techniki działania (ze względu na różnorodność dostępnych procesów).
  2. \n", - "
  3. Kierownik projektu ma dostęp do pełnej informacji o zachodzących procesach.
  4. \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "
Minusy modelu PMBOK
\n", - "
    \n", - "
  1. Mała elastyczność
  2. \n", - "
  3. Centralizacja władzy
  4. \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "## 2.2. Metodologie zwinne\n", - "Metodologie zwinne przeciwstawiają się metodologiom tradycyjnym w czterech płaszczyznach:\n", - " * Inteakcje między ludźmi podczas pracy są ważniejsze niż procesy i narzędzia.\n", - " * Działające oprogramowanie (choćby prototyp) jest ważniejsze niż rozbudowana dokumentacja.\n", - " * Współpraca z klientem / uzytkownikiem podczas pracy jest ważniejsza niż negocjowanie umowy.\n", - " * Reakcja na zmiany jest ważniejsza niż stosowanie się do planu." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "### Scrum (pol. młyn)\n", - "Scrum jest metodologią, w której kluczowym elementem jest **sprint** - faza, która kończy się działającym prototypem. Po każdym sprincie następuje planowanie działań w kolejnym sprincie - biorące pod uwagę dotychczasowe doświadczenia." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "
Plusy modelu Scrum
\n", - "
    \n", - "
  1. Szybkie dostarczanie działającego systemu - również w wersji końcowej (na rynek).
  2. \n", - "
  3. Elastyczne dostosowywanie się do zmieniających się potrzeb biznesowych.
  4. \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - "
Minusy modelu Scrum
\n", - "
    \n", - "
  1. Wymagana jest współpraca ze strony klienta (użytkownika) - a o to niełatwo!
  2. \n", - "
  3. Konieczne jest zaangażowanie i zrozumienie koncepcji ze strony całego zespołu wykonawców.
  4. \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "### Kanban\n", - "Nazwa pochodzi z języka japońskiego: \n", - " * Znak 看(kan)występuje w złożeniach z innymi znakami oraz w czasownikach 看る(miru)- doglądać, zajmować się czymś, opiekować; a także 看す(mesu)- rządzić, zarządzać. \n", - " * Znak 板(ita, w złożeniach czytany jako \"han\" i \"ban\")funkcjonuje także poza złożeniami, i oznacza deskę, tablicę. \n", - " * Rzeczownik 看板(kanban)będący nazwą metodologii, sam w sobie oznacza także: znak, billboard, tablicę informacyjną.\n", - "\n", - "**Kanban** jest metodologią, w której kluczowym elementem jest **wizualizacja** przebiegu projektu - najczęściej za pomocą tablicy, na której przesuwane są zadania wraz z postępem ich wykonania (od początku do zakończenia)." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "
Plusy modelu Kanban
\n", - "
    \n", - "
  1. Motywujący wpływ na pracę zespołową.
  2. \n", - "
  3. Wysoka wydajność poprzez zapobieganie zatorom w pracy.
  4. \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - "
Minusy modelu Kanban
\n", - "
    \n", - "
  1. Wysoko wskazane jest doświadczenie przynajmniej jednego członka zespołu.
  2. \n", - "
  3. Istotne dla sukcesu jest ustawienie zadań w odpowiedniej kolejności.
  4. \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "# 3. Metodologia Prince2" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "
\n", - " \n", - "

3.1. Pryncypia w Prince2

\n", - "\n", - " Pryncypia Prince2 to nakazy wynikające z najlepszych praktyk zarządzania projektami. \n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 1.Ciągła zasadność biznesowa\n", - "* Musi istnieć jakiś biznesowy (przeliczalny na pieniądze) powód do rozpoczęcia projektu. \n", - "* Uzasadnienie biznesowe musi mieć miejsce podczas całego projektu - trzeba to cały czas sprawdzać." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 2. Korzystanie z doświadczeń\n", - "* Podczas wykonywania projektu należy wyciągać wnioski - uczyć się lekcji.\n", - "* Lekcje te powinny być zapisywane." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 3. Określone role i obowiązki\n", - "W projekcie wykonawcy mają określone role i określone zakresy odpowiedzialności. Dotyczy to również przedstawicieli klienta." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 4. Zarządzanie etapami \n", - "Projekt jest planowany i monitorowany etap po etapie." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 5. Zarządzanie tolerancją\n", - "Jeśli przebieg projektu mieści się w granicach tolerancji (czas, pieniądze itp.), to nie ma potrzeby alarmować przełożonych. W przypadku **wyjątku** (wyjście poza granicę tolerancji), trzeba powiadomić przełożonych." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 6. Koncentracja na produktach\n", - "Najważniejsza w projekcie jest jakość dostarczanych produktów." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 7. Dostosowywanie do warunków\n", - "Metodyka zarządzania powinna być dostosowana do specyfiki projektu: środowisko, złożoność, zespół, ryzyko itp." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "
\n", - "\n", - "

3.2. Motywy przewodnie (tematy) Prince2

\n", - "\n", - " Motyw przewodni to aspekt zarządzania. \n", - " \n", - "(Na przykład jedna osoba może zarządzać tylko jednym (lub kilkoma) aspektem zarządzania.)\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 1. Potrzeba biznesowa\n", - "W zarządzaniu trzeba cały czas wyjaśniać zespołowi, jaka jest potrzeba biznesowa projektu - skąd projekt się wziął i dlaczego warto go kontynuować." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 2. Organizacja\n", - "Trzeba precyzyjnie przydzielić role w zespole oraz odpowiedzialności." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 3. Jakość\n", - "Trzeba mieć jasno określone aspekty jakości, które ma spełniać tworzony produkt." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 4. Plany\n", - "Zespół projektowy powinien znać **plan** całego przedsięwzięcia - co i kiedy się wydarzy." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - " ### 5. Ryzyko\n", - "Trzeba wiedzieć, jak sobie radzić ze zdarzeniami, które nie są pewne - mieć przygotowany \"plan B\" na wszelkie okoliczności." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "
\n", - " \n", - "

Ryzyko

\n", - " Ryzyko to niepewne wydarzenie, które w przypadku zajścia będzie miało wpływ na osiągnięcie założeń projektu.\n", - "
\n", - " \n", - "Wartość ryzyka można wyznaczyć mnożąc prawdopodobieństwo zajścia zdarzenia przez wielkość jego wpływu na projekt.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 6. Zmiana\n", - "Niezbędna jest świadomość tego, jak decyzja o jakiejkolwiek zmianie wpłynie na plany i produkt." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 7. Postępy\n", - "Trzeba stale monitorować wykonywanie projektu i na bieżąco decydować, czy i jak się powinno kontynuować." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "
\n", - " \n", - "

3.3. Procesy Prince2

\n", - " \n", - " Proces to zestaw aktywności, mających na celu zrelizowanie pewnego określonego celu.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 1. Przygotowanie projektu\n", - "CEL: Zapewnienie, że:\n", - " * projekt ma sens biznesowy i jest na niego pozwolenie,\n", - " * znany jest zakres projektu,\n", - " * wyznaczono osoby do roli zarządczych,\n", - " * zaplanowano prace do inicjacji projektu,\n", - " * odrzucono nierozsądne pomysły." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 2. Zarządzanie strategiczne projektem\n", - " CEL: Zapewnienie, że:\n", - " * są osoby odpowiedzialne za inicjację projektu, dostarczanie produktów i zakończenie projektu,\n", - " * przedstawiciel klineta ma dostęp do informacji o postępach projektu,\n", - " * plany dotyczące wykorzystania produktu po zakończeniu projektu są cały czas aktualne." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 3. Inicjowanie projektu\n", - " CEL: Oszacowanie następujących cech projektu:\n", - " * czas wykonania,\n", - " * koszt wykonania,\n", - " * oczekiwana jakość,\n", - " * zakres,\n", - " * ryzyko,\n", - " * korzyści." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 4. Sterowanie etapem\n", - " CEL: zapewnienie, że dla danego etapu:\n", - " * przydzielono wykonawców do wszystkich zadań,\n", - " * praca jest monitorowana,\n", - " * problemy są zgłaszane,\n", - " * każdy etap jest udokumentowany raportem." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 5. Zarządzanie wytwarzaniem produktu\n", - " CEL: zapewnienie, że\n", - " * jest pełne zrozumienie, jakie są wymagania na przyjęcie produktu,\n", - " * dostarczony produktu mieści się w granicach przyjętej tolerancji." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 6. Zarządzanie punktami granicznymi między etapami\n", - " CEL: dostarczenie przełożonym wystarczającej informacji, by można określić:\n", - " * czy etap zakończył się sukcesem,\n", - " * czy (i ewentualnie jak) należy zmodyfikować kolejny etap,\n", - " * czy (i ewentualnie jak) należy zmodyfikować cały plan,\n", - " * potwierdzić, czy istnieje potrzeba biznesowa na kontynuowanie planu i czy można zaakceptować ryzyko." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### 7. Zamykanie projektu \n", - " CEL: Określenie momnetu w czasie, kiedy projekt jest zaakceptowany, czyli:\n", - " * sprawdzono, że produkty są zaakceptowane przez ich użytkowników,\n", - " * zweryfikowano, że działanie produktów jest zgodne z założeniami,\n", - " * określono uzyskane i przyszły korzyści z wyników projektu,\n", - " * zdefiniowano ryzyka i niepewności, któe mogą powstać po zakońceniu projektu." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "## 3.4. Grupy interesariuszy\n", - "W projekcie zgodnym z PRINCE2 powinny być zawsze reprezentowane trzy główne grupy interesariuszy:\n", - "\n", - " * Biznes,\n", - " * Użytkownicy, \n", - " * Dostawcy." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### Strona reprezentująca Biznes\n", - "„Czy projekt jest ciągle wart realizacji?”. \n", - "\n", - "W Komitecie Sterującym biznes reprezentowany jest przez **Przewodniczącego**." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### Strona reprezentująca Użytkowników\n", - "Użytkownicy odnoszą korzyści dzięki eksploatacji wytworzonych w projekcie produktów. Mogą też tymi produktami się posługiwać oraz je serwisować i utrzymywać. \n", - "\n", - "W celu zapewnienia, że w projekcie powstaną właściwe produkty o uzgodnionej jakości, użytkownicy muszą być reprezentowani w Komitecie Sterującym. Reprezentację tę powierza się roli **Głównego Użytkownika**." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "### Strona reprezentująca dostawców\n", - "Dostawca zapewnia zasoby i umiejętności niezbędne do wytworzenia produktów, np. firma IT. \n", - "\n", - "Interesy dostawców są reprezentowane w Komitecie Sterującym przez rolę **Głównego Dostawcy**." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "
\n", - "\n", - "

3.5. Role w Prince2

\n", - " \n", - " Rola to funkcja w projekcie, do której przypisane są obowiązki i odpowiedzialności. \n", - "
Role są powierzane konkretnym osobom. W niewielkim projekcie jedna osoba może pełnić kilka ról.\n", - " \n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "* **Komitet Sterujący** (ang. Project Board), a w nim: \n", - " * Przewodniczący (Executive),\n", - " * Główny Użytkownik (Senior User),\n", - " * Główny Dostawca (Senior Supplier)." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "* **Kierownik Projektu** (Project Manager) - odpowiedzialny za operacyjne (codzienne) zarządzanie projektem. \n", - "\n", - "Jego podstawowym obowiązkiem jest dbanie o to, aby projekt wytwarzał wymagane produkty przy założonych celach, którymi są: \n", - "\n", - "- czas, \n", - "- koszt, \n", - "- jakość, \n", - "- zakres, \n", - "- ryzyko,\n", - "- korzyści." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "* **Kierownik Zespołu** (Team Manager) - odpowiedzialny za dostarczanie określonego produktu o zdefiniowanej jakości w ramach uzgodnionego kosztu i czasu. \n", - "\n", - "Rola Kierownika Zespołu jest opcjonalna i ma zazwyczaj zastosowanie w dużych projektach." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "* **Nadzór Projektu** (Project Assurance) - drugie źródło informacji dla Komitetu Sterującego (przydatne w sytuacji, gdy Kierownik Projektu nie chce ujawniać problemów)." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "* **Wsparcie Projektu** (Project Support) - wsparcie administracyjne oraz wsparcie w zakresie planowania i zarządzania ryzykiem Obsługa Zmian." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "subslide" - } - }, - "source": [ - "* **Obsługa Zmian** - osoba lub zespół delegowany do oceny żądań zmian lub odstępstw - z reguły są to zmiany poważniejsze niż te, które są w gestii Kierownika Projektu, a za mało istotne, by zawracać głowę Komitetowi Sterującemu." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "# Podsumowanie\n", - " * Metodologie zarządzania projektami można podzielić na:\n", - " * tradycyjne (sekwencyjne)\n", - " * zwinne (adaptacyjne, iteracyjne)\n", - " * Prince2 zaliczana jest do metodologii sekwencyjnych. \n", - " * Metodologia Prince2 jest bardzo często stosowana w projektach badawczo-rozwojowych finansowanych przez instytucje, gdyż oczekują one:\n", - " * wymiernych produktów,\n", - " * ciągłego raportowania,\n", - " * umiejętności zarządzania ryzykiem.\n", - " * W rzeczywistych projektach stosuje się najczęściej kompilację przeróżnych metodologii.\n", - " " - ] - } - ], - "metadata": { - "author": "Krzysztof Jassem", - "celltoolbar": "Slideshow", - "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": "04. Metodologia Prince 2[wykład]", - "title": "Przygotowanie do projektu badawczo-rozwojowego", - "year": "2021" - }, - "nbformat": 4, - "nbformat_minor": 4 -}