Projektowanie systemów informatycznych
Zarządzanie systemami informatycznymi
dr Halina Tańska
Warsztat analityka i projektanta SI
modele DP pakiety komputerowe metody
i techniki metodyki
System informatyczny
badanie, wybór, integracja
dopasowanie,
skompletowanie optymalnej
proces analizy i projektowania
Potrzeby, cechy DP
dziedzina przedmiotowa
Metodologia i narzędzia zarządzania projektami
• Zarządzanie projektami - definicje
• Organizacja projektu
• Procesy zarządzania projektem
• Proces planowania i czynniki krytyczne
• Zarządzanie zakresem prac
• Wymiarowanie projektów informatycznych
• Zarządzanie czasem projektu
• Zarządzanie zasobami projektu
• Zarządzanie komunikacją, ryzykiem i zmianami
Co to jest zarządzanie?
• dokładne poznanie tego, czego oczekuje się od ludzi, a następnie dopilnowanie, aby wykonali to w najlepszy i najtańszy sposób (F.W.Taylor, 1903)
• ogół działań zmierzających do efektywnego wykorzystania zespołów ludzkich, środków materialnych i czasu w celu osiągnięcia wcześniej sformułowanego celu projektu
informatycznego w określonej technologii, zakresie i jakości (KF)
• składa się z 5 funkcji: planowanie, organizowanie,
przekazywanie poleceń, koordynacja i kontrolowanie. W ramach każdej zarządzający może wykorzystać określone środki organizacyjne, motywacyjne i techniczne, służące ich realizacji.
• nauka o metodach, zasadach, instrumentach dotyczących realizacji podanych założeń
Co to jest projekt?
Parametry projektu
• Projekt to niepowtarzalny i nierutynowy proces
realizacji określonych celów, w określonym czasie i za pomocą określonych środków, który jest zdefiniowany przez:
– produkt końcowy (zakres) – czas realizacji (terminy) – koszty realizacji (budżet)
koszt zakres
czas
cel projektu
Parametry projektu
Co to jest projekt?
Specyfika skali projektu informatycznego
wielkość projektu
przemysł / budownictwo systemy informatyczne
koszt łączny
Procesy zarządzania projektem
Jeśli nie potrafisz czegoś zaplanować, to na jakiej podstawie sądzisz, że potrafisz to zrobić? (KF)
wykonywany produkt
procesy planowania
czynniki krytyczne sukcesu
Procesy zarządzania projektem
Kategorie procesów zarządzania projektami:
• procesy inicjacji
• procesy planowania
• procesy wykonawcze
• procesy kontrolne
• procesy zakończeniowe
inicjacji
planowania
kontrolne wykonawcze
zakończeniowe
Metodologia i narzędzia zarządzania projektami
• Zarządzanie projektami - definicje
• Organizacja projektu
• Procesy zarządzania projektem
• Proces planowania i czynniki krytyczne
• Zarządzanie zakresem prac
• Wymiarowanie projektów informatycznych
• Zarządzanie czasem projektu
• Zarządzanie zasobami projektu
• Zarządzanie komunikacją, ryzykiem i zmianami
Zarządzanie zakresem prac
• Proces planowania
• Elementy planu projektu
• Hierarchiczna struktura prac (WBS)
• Definiowanie zakresu i planu punktów węzłowych
Zarządzanie zakresem prac
Proces planowania
Cele i ograniczenia
Definiowanie zadań
Szeregowanie zadań
Ocena czasu
realizacji zadań Ocena zasobów
Rezultaty, czas, koszty, zasoby
ludzie, koszty, sprzęt, materiały
Opracowanie harmonogramu
Scalanie planu
Co?
W jakiej kolejności?
Jak długo?
Kto i czym?
Co i kiedy? Za ile?
Zarządzanie zakresem prac
Planowanie zadań projektu – struktura prac
Punkt wyjścia
Punkt końcowy
Zarządzanie zakresem prac
Hierarchczna struktura prac
WBS - Work Breakdown Strukture metoda dekompozycji prac
Struktura ta ma postać drzewa ilustrującego związki pomiędzy składowymi projektu i może być
dowolnie rozwijana.
W praktyce stosowane są maksymalnie cztery poziomy
rozwinięcia.
W dużych projektach można
wydzielone elementy z najniższego poziomu dekomponować (max.4)
Zarządzanie zakresem prac
Hierarchczna struktura prac
Projekt
Dokumentacja Podprojekt 1 Podprojekt 2 Integracja i testy
Sprzęt Dokumentacja
Sieć Terminale
Połączenie z serwerem Sieć lokalna – Budynek A
System A System B
Poziom 0 Poziom 1
Poziom 2
Poziom 3
Poziom 4
Metodologia i narzędzia zarządzania projektami
• Zarządzanie projektami - definicje
• Organizacja projektu
• Procesy zarządzania projektem
• Proces planowania i czynniki krytyczne
• Zarządzanie zakresem prac
• Wymiarowanie projektów informatycznych
• Zarządzanie czasem projektu
• Zarządzanie zasobami projektu
• Zarządzanie komunikacją, ryzykiem i zmianami
Wymiarowanie
projektów informatycznych
• Estymacja parametrów projektu
• Miary stosowane w projektach
• Techniki szacowania
– technika analogii
– ekstrapolacja, parametryzacja – techniki inżynierskie
– techniki specjalne
• Metoda punktów funkcyjnych
Wymiarowanie
projektów informatycznych
• Pracochłonność prac
• Kwalifikacje i umiejętności członków zespołu
• Wykorzystanie materiałów i urządzeń
• Czas pracy urządzeń
• Różne opłaty
• Parametry dostaw
• Liczba i czas podróży służbowych
• Czas nieprodukcyjny
• Wynagrodzenia i nagrody
Przykładowa lista elementów podlegających estymacji:
Wymiarowanie
projektów informatycznych
Miary stosowane w projektach
• Numeryczna miara wybranej cechy oprogramowania, np.:
– program A jest dwa razy bardziej złożony niż program B, – program B jest dwa razy trudniejszy do pielęgnacji niż
program A,
– program A jest bardziej złożony niż program B
• Obszary mierzenia oprogramowania: koszty,
pracochłonność, jakość, niezawodność, złożoność, złożoność obliczeniowa algorytmu.
Wymiarowanie
projektów informatycznych
Miary stosowane w projektach – odpowiedzi na pytania:
• Co oznacza miara „bardziej lub mniej złożony”?
• Kiedy ma sens stwierdzenie, że program A jest dwa razy bardziej złożony niż program B?
• Jaki sens ma stwierdzenie, że średnia złożoność programów w systemie A jest dwukrotnie większa niż średnia złożoność programów w systemie B?
• Czy jest możliwe mierzenie złożoności programu według jednej miary, czy też należałoby wyliczać różne rodzaje złożoności?
• Jaki sens ma stwierdzenie, że złożoność kolejnej wersji programu wzrasta o 25%?
Wymiarowanie
projektów informatycznych
Miary stosowane w projektach
Dwa rodzaje złożoności oprogramowania:
• Złożoność obliczeniowa
• Złożoność psychologiczna
• Miary statyczne
• Miary historyczne
klasy
Wymiarowanie
projektów informatycznych
Statyczne miary złożoności produktu w określonym czasie:
• Miara objętości:
– linie kodu (LOC)
– liczba zdań źródłowych
– liczba operacji i operandów – liczba procedur
– średnia długość procedury – liczba zmiennych
• Miara organizacji sterowania:
– Złożoność cykliczna (McCabe) – Miara pętli (Woodward&Hennel) – Minimalna liczba przecięć (Chen)
– Średni poziom zanurzenia (Dunsmore)
• Miara organizacji danych:
– Miara powiązania danych
Historyczne miary złożoności?
To jakość produktu w określonym czasie!
Wymiarowanie
projektów informatycznych
Przykład szacowania przez analogię
projekt
projektowanie realizacja
projektowanie oprogramowanie testowanie dokumentacja
projektowanie specyfikacja
wymagań
wewnętrzne zewnętrzne kodowanie,
testy modułów
testy podsystemów 100%
20% 80%
63% 12%
12%
30% 13%
20%
8% 5%
6% 6%
Wymiarowanie
projektów informatycznych
optymalna liczebność zespołu
Liczebność zespołu
Czas realizacji
Wymiarowanie
projektów informatycznych
pracochłonność a punkty funkcyjne
Punkty funkcyjne Pracochłonność w osobomiesiącach
200 400 600 800 1000 1200 1400 1600 1800 300
250 200
150
100 50 0
Wymiarowanie
projektów informatycznych
• Estymacja parametrów projektu
• Miary stosowane w projektach
• Techniki szacowania
– technika analogii
– ekstrapolacja, parametryzacja – techniki inżynierskie
– techniki specjalne
• Metoda punktów funkcyjnych
Pr zy kła d ?
Metoda punktów funkcyjnych
przykład – system KANTOR
• Właściciel sieci kantorów wymiany walut – kilkutygodniowa kontuzja na nartach
• Chce nadzorować pracę kantorów z domu
• Poprosił znajomego informatyka o
oszacowanie pracochłonności i czasu wykonania projektu „informatycznego
systemu zdalnego zarządzania kantorami”
Metoda punktów funkcyjnych
przykład – system KANTOR
• Podstawowa funkcja systemu – obsługa operacji kupna sprzedaży walut, bez szczegółowej ewidencji prowadzonych transakcji
• Podstawowy dokument drukowany przez system to rachunek dla klienta
• Dla właściciela – raport z bieżącego stanu kasy na ekranie oraz drukowany
• Codziennie przed otwarciem kas kantorów wprowadzany jest aktualny stan kasy
• Potrzebny jest bezpośredni dostęp do tabeli kursów walut NBP
• Potrzebna jest możliwość szybkiego zapytania o aktualny stan waluty w kasie
Metoda punktów funkcyjnych
przykład – system KANTOR
System KANTOR
Kantorowe kursy walut
Stan kasy
Kursy walut NBP
Stan
początkowy
Operacja
Zapytanie
Wydruki
Rachunek
Ekran
Metoda punktów funkcyjnych
przykład – system KANTOR
Szacowanie złożoności elementów systemu
1. Wejścia 3x1 4x1 6x0
2. Wyjścia 4x1 5x1 7x1
3. Zbiory wewnętrzne 7x1 10x1 15x0 4. Zbiory zewnętrzne 5x0 7x0 10x1
5. Zapytania 3x0 4x1 6x0
lp (i)
(j) Poziom złożoności el.
Elementy przetwarzania
prosty średni złożony
NPF=3+4+0+4+5+7+7+10+0+0+0+10+0+4+0=54 Nieskorygowane Punkty Funkcyjne
Metoda punktów funkcyjnych
przykład – system KANTOR
Szacowanie czynników korygujących
1. Występowanie urządzeń komunikacyjnych 2. Rozproszenie przetwarzania
3. Wymagane parametry szybkości działania 4. Skomplikowana logika przetwarzania
5. Obciążenie systemu – liczba transakcji 6. Wprowadzanie danych w trybie online 7. Wydajność użytkownika końcowego 8. Aktualizacja danych
9. Rozproszenie terytorialne 10.Złożoność przetwarzania 11.Przenośność
12.Prostota instalacji 13.Prostota obsługi
14.Przewidywanie wprowadzania zmian (w okresie eksp.)
• 5
• 0
• 0
• 0
• 0
• 4
• 0
• 0
• 0
• 0
• 0
• 0
• 5
• 5
19
Metoda punktów funkcyjnych
przykład – system KANTOR
obliczenie wartości skorygowanych PF
PF = 54 * ( 0,65 + 0,01 * 19 ) PF = 45
Jaka jest zależność pracochłonności od punktów funkcyjnych???
Wymiarowanie
projektów informatycznych
pracochłonność a punkty funkcyjne
Punkty Funkcyjne Pracochłonność w osobomiesiącach
200 400 600 800 1000 1200 1400 1600 1800 300
250 200
150
100 50 0
45 2
Wymiarowanie projektów informatycznych Metoda punktów funkcyjnych
przeliczanie wielkości na punkt funkcyjny
• Liczba wymaganych testów oprogramowania
• Koszt globalny wykonania jednego punktu funkcyjnego
• Koszt pielęgnacji punktu funkcyjnego
• Stopień zmian na punkt funkcyjny
• Wydajność programisty
• inne
Metodologia i narzędzia zarządzania projektami
• Zarządzanie projektami - definicje
• Organizacja projektu
• Procesy zarządzania projektem
• Proces planowania i czynniki krytyczne
• Zarządzanie zakresem prac
• Wymiarowanie projektów informatycznych
• Zarządzanie czasem projektu
• Zarządzanie zasobami projektu
• Zarządzanie komunikacją, ryzykiem i zmianami
Zarządzanie czasem projektu
• wyznaczanie terminu realizacji projektu
• jednostki czasu w projekcie
• harmonogramowanie
• relacje pomiędzy zadaniami
• wymiarowanie zadań
Zarządzanie czasem projektu
• wyznaczanie terminu realizacji projektu
– ustala się datę rozpoczęcia projektu – ustala się datę zakończenia projektu
– wyznacza się daty wykonania konkretnych punktów węzłowych
Zarządzanie czasem projektu
jednostki czasu w projekcie
• jednostki czasu w projekcie = pracochłonność
• szacowanie czasu realizacji w oderwaniu od konkretnego kalendarza
• obliczanie pracochłonności za pomocą jednostek:
roboczogodzina, roboczodzień roboczotydzień – czyli ile pracy trzeba wykonać, aby zrealizować dane zadanie
• w odniesieniu do zespołu: osobomiesiąc
Zarządzanie czasem projektu
jednostki czasu w projekcie
Zależność czasu realizacji zadania
od liczebności zespołu oraz specyfiki projektu
Liczebność zespołu Liczebność zespołu Liczebność zespołu Liczebność zespołu
czas czas czas czas
Zarządzanie czasem projektu
harmonogramowanie
Specyfikacja wymagań Koncepcja systemu Projekt
Implementacja Testowanie
Testowanie integracyjne Wdrażanie
Wykres Gantta
Zarządzanie czasem projektu
relacje pomiędzy zadaniami
Zadanie A
Zadanie A
Zadanie A
Zadanie A
Zadanie B
Zadanie B
Zadanie B
Zadanie B (1)
(2)
(3)
(4)
Zarządzanie czasem projektu
wymiarowanie zadań
1 10 10
10 9 19
ZADANIE 3.4
Numer zadania
Najwcześniejszy
termin rozpoczęcia Czas realizacji zadania
Najwcześniejszy termin realizacji
Najpóźniejszy termin rozpoczęcia
Najpóźniejszy termin zakończenia
Zapas czasu zadania
Opis zadania
5
ZADANIE A
15
ZADANIE B
5
ZADANIE C
8
ZADANIE E
22
ZADANIE D
Zarządzanie czasem projektu
wymiarowanie sieci zadań
1 5 5
ZADANIE A
6 15 20
ZADANIE B
21 5 25
ZADANIE C
28 8 35
ZADANIE E
6 22 27
ZADANIE D
Zarządzanie czasem projektu
wymiarowanie sieci zadań
1 5 5
1 0 5
ZADANIE A
6 15 20
8 2 22
ZADANIE B
21 5 25
23 2 27
ZADANIE C
28 8 35
28 0 35
ZADANIE E
6 22 27
6 0 27
ZADANIE D
Zarządzanie czasem projektu
wymiarowanie sieci zadań
Literatura
• Halina Tańska, Analiza systemów informatycznych, Wydawnictwo UWM, Olsztyn 2003
• Ani Phyo, Web Design. Projektowanie atrakcyjnych stron WWW, Helion, Gliwice 2003
• Kazimierz Frączkowski, Zarządzanie projektem informatycznym, Oficyna Wydawnicza Politechniki Wrocławskiej, Wrocław 2003
• Zdzisław Szyjewski, Zarządzanie projektami
informatycznymi. Metodyka tworzenia systemów
informatycznych, Agencja Wydawnicza Placet, Warszawa 2001
• Zarządzanie – MS Projct Manager
Microsoft Office Project 2003 Step-By-Step (MS Press, 2004).pdf