Projekt z przedmiotu:
Utrzymanie i rozwój systemów informacyjnych
Temat: Metodyka punktów węzłowych w realizacji systemu informatycznego - założenia metodyki punktów węzłowych
Wykonał:
Krzysztof Nagaś
II ZUMFI sem 4
Doświadczenia z projektów różnej wielkości, realizowane w różnych środowiskach oraz rosnąca złożoność i skala współczesnych przedsięwzięć zrodziły potrzebę usystematyzowania wiedzy dotyczącej zarządzania projektami niezależnie od obszaru ich realizacji. Wspólnota spraw związanych z zarządzaniem projektami realizowanymi w różnych obszarach aktywności stała się przesłanką powołania w 1969 roku Project Management Institute (PMI). Głównym celem instytutu jest zbieranie, analiza i uogólnianie doświadczeń w celu doskonalenia i popularyzacji metod realizacji projektów. W wyniku licznych dyskusji prowadzonej przez kolejne lata na konferencjach i w zespołach roboczych, ogólny zbiór zasad zarządzania projektami został skodyfikowany przez Project Management Insitute i wydany w postaci przewodnika. PMI traktuje zarządzanie projektami jako samodzielną profesję i w przewodniku zawiera podstawowe założenia dla wykonujących ten zawód. Projekt jest charakteryzowany jako działania, które:
wykonywane są przez ludzi
realizowane są przy określonych zasobach
są planowane, realizowane i kontrolowane
Zarządzanie projektami, wg przewodnika PMI jest natomiast zastosowaną wiedzą, umiejętnościami, narzędziami i technikami wykorzystywanymi w procesie realizacji wymagań projektowych. Składa się na to umiejętne wykorzystanie tego w procesach:
inicjacji
planowania
wykonania
nadzoru
zamknięcia projektu
W przewodniku PMI zarządzanie projektami jest postrzegane jako 9 obszarów aktywności:
zarządzanie integracją - oznacza procesy gwarantujące koordynacje wielu elementów planowania prac, wykonawstwa oraz wprowadzania zmian do projektów w trakcie realizacji
zarządzanie zakresem - to prace związane z inicjacją i planowaniem zakresu projektu, definicją zakresu oraz jego weryfikacją, wreszcie nadzorowaniem zmian zakresu. Prace te mają zagwarantować sukces projektu zgodnie z określonymi wymaganiami
zarządzanie czasem - ma gwarantować wykonanie kompletu prac w zdefiniowanym czasie. Składa się na to definiowanie zadań do wykonania, szeregowanie ich w czasie, szacowanie czasu wykonania poszczególnych prac, harmonogramie oraz kontrola opracowanego harmonogramu
zarządzanie kosztami - ma gwarantować utrzymanie projektu w przyjętym budżecie. Polega to na planowaniu wymaganych do realizacji zasobów, szacowania kosztów realizacji, budżetowaniu kosztów i kontroli realizacji budżetu.
zarządzanie jakością projektu - ma gwarantować spełnienie oczekiwań użytkownika przez planowanie cech jakościowych, zapewnienie ich osiągnięcia i kontroli cech jakościowych wykonanych prac projektowych
zarządzanie zasobami ludzkimi - to efektywne wykorzystywanie ludzi biorących udział w projekcie, dzięki planowaniu organizacji zespołu, pozyskiwaniu pracowników, tworzenie zespołu wykonawców projektów
zarządzanie komunikacją - polega na doborze właściwych sposobów przepływu informacji w zespole zaangażowanym w projekt. Planowanie komunikacji to formalizowanie dystrybucji informacji wśród uczestników projektu, raportowanie oraz administrowanie procederami zamknięcia projektu
zarządzanie ryzykiem - polega na identyfikacji zagrożeń, analizie i ocenie ryzyka, planowaniu działań zapobiegawczych oraz kontroli ich realizacji. Proces ten wykonywany jest cyklicznie w całym cyklu życia produktu
zarządzanie dostawami - to prawidłowe zorganizowanie współpracy z dostawcami zewnętrznymi towarów i usług wykorzystywanych w procesie realizacji projektu
Projekt jest unikatowym przedsięwzięciem. Pociąga za sobą pewną niepewność co do ostatecznego wyniku. Dla jej minimalizacji organizacje wykonujące projekt dzielą go na fazy w celu lepszego zarządzania i nadzoru nad wydatkami. Produkty wykonywane w kolejnych fazach stanowią całość składającą się na projekt realizowany w cyklu jego życia. Określa on działania jakie będą podejmowane na początku każdej fazy i co będzie jej wynikiem. Jeden z pierwszych dokładnych opisów cyklu życia systemu powstał w Departamencie Obrony USA, definiując kaskadowy cykl życia systemu. Opis ten modyfikowano w wyniku kolejnych doświadczeń. W tym cyklu życia wyróżniono 4 zasadnicze fazy. Pierwsza polega na wykonaniu studiów literaturowych, przedstawieniu różnorodnych koncepcji i wizji rozwiązania problemu z uwzględnieniem rozwoju technologii i aktualnymi możliwościami technologicznymi realizacji koncepcji. W wyniku dyskusji wybierana jest architektura systemu i technologia jego realizacji. Drugi etap to konstrukcja modelu, systemu integracji, redukcja ryzyka projektowego, wstępny test i demonstracja rozwiązania modelowego i możliwości realizacji. Kolejna faza to wykonanie przedstawionego modelu. Ostatnią fazą jest strojenie końcowe projektu i pielęgnacja systemu w trakcie eksploatacji użytkowej.
Zarówno pierwszy model cyklu życia oraz inne zaprezentowane w przewodniku PMI mają charakter kaskadowy. Każdy z nich w zależności od specyfiki obszaru realizacji projektu kładzie nacisk na inne aspekty cyklu życia systemu i uwypukla to w propozycji podziału prac projektowych.
Projekt jest kompozycją procesów, a proces jest określoną aktywnością przynoszącą założony rezultat. Procesy wykonywane w ramach projektu są realizowane przez uczestników tego projektu i generalnie możemy wyróżnić dwie ich kategorie:
procesy zarządzania projektem, które koncentrują się na opisywaniu i organizowaniu prac projektowych
procesy zorientowane na produkt, które koncentrują się na produkcie projektu, czyli na systemie informatycznym
Procesy zarządzania projektami można zgrupować w 5 kategorii:
procesy inicjacji - ustanowienie projektu, faza rozpoczęcia i przekazania decyzji zespołowi realizującemu
procesy planowania - wymyślenie i opracowanie schematu działań prowadzących do wykonania produktu, będącego przedmiotem projektu,
procesy wykonawcze - koordynowanie ludzi i zasobów w celu wykonania projektu zgodnie z planem
procesy kontrolne - monitorowanie prac, mierzenie postępu prac oraz podejmowanie działań korekcyjnych, gdy zachodzi taka potrzeba,
procesy zakończeniowe - formalna akceptacja wyników prac i przekazanie produktu do użytkowania
Metodyką tworzenia systemu informatycznego nazywamy zdyscyplinowane, wykorzystujące określony cykl życia systemu oraz najczęściej wspomagane narzędziami komputerowymi, podejście do procesu realizacji projektu informatycznego. Metodyki powstają w wyniku uogólnionych doświadczeń zebranych przy realizacji wielu projektów informatycznych. Konkretna metodyka wykorzystuje te doświadczenia i ustanawia procedury, które dają większą szansę uzyskania sukcesu projektu. Oprzyrządowanie stanowi, sprawdzone w innych projektach, procedury postępowania, zasady organizacji zespołu i prac projektowych, dokumenty i normy wypracowane we wcześniejszych projektach. Korzystanie z doświadczeń wcześniejszych projektów pozwala na unikanie błędów oraz powielanie dobrych wzorców postępowania i praktyk działania.
Metodyki powstają w wyniku kumulacji doświadczeń z wielu zrealizowanych projektów. Zarówno pozytywne jak i negatywne doświadczenia, analizowane przez wykonawców stanowią podstawę do decyzji przy pracach nad kolejnym projektem informatycznym. Opracowane procedury i miary pozwalają na lepsze szacowanie parametrów nowego projektu i podejmowanie lepszych decyzji w nowej sytuacji. Metodyka jest uzupełniana o nowe doświadczenia i żyje wraz z rozwojem firmy zbierającej doświadczenia.
Były to uogólnione doświadczenia z realizacji systemów konkretnej branży, często wykorzystującej jednorodny sprzęt i oprogramowanie systemowe. Ambitne próby ujednolicenia podejmowały jednostki centralne funkcjonujące w informatyce lat ubiegłych, jak Zjednoczenie Informatyki, czy funkcjonujący w nim Ośrodek Badawczo-Rozwojowy informatyki. Opracowywano, publikowano i rozpowszechniano jednorodne standardy dokumentacyjne wytwarzanych systemów informatycznych. Prace te miały bardzo istotne znaczenie na tym etapie rozwoju informatyki w kraju. Próby standaryzacji były dyskutowane i podejmowane przez środowiska naukowe, mające związki z praktykami realizacji systemów informatycznych. Przykładem takiej metodyki jest metodyka punktów węzłowych powstała w szczecińskim środowisku informatyków skupionych wokół ośrodka ZETO oraz uczelni szczecińskich. W pracach tych byli zaangażowani informatycy z innych regionów przez udział w licznych konferencjach i seminariach organizowanych w kolejnych latach.
Konkretne metodyki różnią się specyfiką realizowanych projektów. Specyfika ta to wielkość projektów, założenia specjalne, typ projektu (wytwarzanie, adaptacja, wdrożenie), czy też specjalne uwarunkowania realizacji. Różnice między metodykami polegają też na stopniu wspomagania i konkretnych narzędziach wspomagających daną metodykę. Chociaż funkcjonuje wiele narzędzi uniwersalnych, które są wykorzystywane w wielu metodykach, konkretne metodyki mają własne oprzyrządowanie narzędziowe. Przykładem uniwersalnych narzędzi wspomagających harmonogramowanie są liczne produkty wspomagające tworzenie i śledzenie prac projektowych. Metodyki mogą być różnie klasyfikowane i grupowane, ale powinny spełniać następujące wymagania:
obejmować cały cykl życia systemu od zdefiniowania problemu do pielęgnacji eksploatowanego systemu z jednoczesnym mechanizmem płynnego przejścia przez poszczególne fazy realizacji
proces tworzenia systemu powinien być wspomagany metodami, technikami i narzędziami komputerowymi
powinien być łatwy mechanizm komunikowania się członków zespołu wykonawczego w procesie realizacji systemu
powinny być stosowane standardy, zapewniające łatwość uczenia się i stosowania w różnych środowiskach sprzętowo-programowych
Przykładem metodyki wykorzystującej model kaskadowy może być metodyka punktów węzłowych, która przyjmując wszystkie cechy kaskadowego postępowania proponuje uporządkowaną listę działań koniecznych przy realizacji typowego systemu informatycznego przetwarzania danych. Lista działań powiązanych zależnościami przyczynowo-skutkowymi może stanowić przewodnik dydaktyczny dla mniej doświadczonych twórców systemów informatycznych w pełnym cyklu realizacji systemu informatycznego.
Metodyka punktów węzłowych koncentruje się na zakresie wykonywanych prac, czyli określone są działania odpowiadające na pytanie „co?", należy wykonać. Metodyka nie daje odpowiedzi na pytanie „jak?" należy dane prace wykonać. Sposób realizacji pozostaje indywidualną decyzją kierownika projektu, który wybiera najlepsze, w konkretnym przypadku, narzędzia realizacji prac. Takie podejście uniezależnia metodykę od rozwoju technologii wytwarzania, która dostarcza coraz to nowsze, wydajniejsze narzędzia realizacji zadań określonych na liście prac. W konkretnym przypadku modyfikacji może ulec zaproponowana w metodyce lista zadań, ale łatwiej jest modyfikować istniejącą listę niż konstruować ją samemu od początku. Przedstawiona w metodyce lista działań jest powiązana zależnościami przyczynowo-skutkowymi, określając zalecany porządek realizacji. Sieć czynności do realizacji dodatkowo jest pogrupowana w kilka poziomów ogólności, co pozwala na wybór odpowiedniego poziomu szczegółowości, w zależności od szczebla zarządzania projektem. Głębokość dekompozycji poszczególnych zadań zależy od konkretnego projektu, należy jedynie przestrzegać ogólnych zasad dekompozycji opisanych wcześniej. Nadmiarowość listy zadań nie zwalnia z obowiązku dogłębnej analizy konkretnego projektu i należy traktować ją jako pomocny wzorzec, który trzeba dostosować do konkretnych warunków realizowanego projektu.
Przedstawiony model określa kaskadę działań typową dla większości systemów informatycznych przetwarzania danych. W przypadku konkretnego projektu informatycznego należy wybrać odpowiedni podzbiór czynności koniecznych do realizacji w tym konkretnym przypadku. Może istnieć potrzeba poszerzenia listy na pewnych poziomach dekompozycji lub eliminacji wymienionych na liście prac. Konkretne decyzje, co do ostatecznego kształtu listy zadań podejmowane są w zespole wykonawczym. Metodyka określa związki między wymienionymi czynnościami, dodatkowo czynności te są uszczegółowione na kilku poziomach. Konkretny układ czynności może być dowolnie rozszerzony lub ograniczony do niezbędnego zestawu działań. Konkretne prace wykonywane w ciągu działań pogrupowane zostały w punkty węzłowe, czyli takie zespoły czynności, które kończą się konkretnym produktem, odpowiednio dokumentowanym.
Walor praktyczny metodyki punktów węzłowych, stanowi sieć powiązań punktów węzłowych. Analiza sieci powiązań pozwala na odpowiednią, dla konkretnej sytuacji, organizację procesu realizacji również dla mniej doświadczonych wykonawców. Określenie dla każdego punktu węzłowego listy poprzedników i następników pozwala na sprawną organizacje prac w związku z otwierającym się frontem prac, jak również ułatwia działania kontrolne w poszczególnych etapach realizacji. Analizując sieć zależności można jednoznacznie określić, jakie działania powinny być zakończone przed rozpoczęciem prac nad każdym z wymienionych punktów węzłowych. Wiedza o zalecanej kolejności realizacji pozwala na prawidłową, z punktu widzenia technologii wytwarzania, organizację prac i optymalne wykorzystanie zasobów.
Zaproponowana przez twórców lista punktów węzłowych może być dalej dekomponowana, na kolejnych poziomach, bez obawy zaburzenia struktury całości.
Lista zadań to:
zgłoszenie potrzeby - oznacza inicjację procesu projektowego. Niezależnie od motywacji przyświecającej zgłoszeniu zmiany, sam ten fakt staje się początkiem działań zmierzających do wytworzenia systemu informatycznego. Zgłoszona potrzeba wprowadzenia określonej zmiany wymaga przeprowadzenia badań i analiz, których celem jest określenie możliwości i uwarunkowań realizacji. Prace wykonywane na tym etapie mają za zadanie dostarczenie danych do zdefiniowania zadania projektowego
analiza problemu - analizowane są różne sposoby wprowadzenia sugerowanej zmiany oraz opłacalność ekonomiczna przedsięwzięcia. Zawartość informacyjna dokumentacji wykonanej na tym etapie powinna odzwierciedlać kierunki prowadzonych analiz oraz materiały źródłowe i wyciągnięte wnioski
zdefiniowanie zadania projektowego - jest wynikiem prac analitycznych i określa wstępny zakres systemu i koniecznych do wykonania prac projektowych. Opisane są uwarunkowania wykonania projektu; będą to czynniki organizacyjne, sprzętowe, finansowe, kadrowe, prawne oraz spodziewany wpływ otoczenia biznesowego
opis stanu istniejącego - sprowadza się do opisu aktualnego stanu organizacji i tych elementów, które są istotne z punktu widzenia rozpoczynanego projektu. W szczególności opisujemy wykorzystywane dane i strumienie informacyjne oraz algorytmy ich przetwarzania. Opisy te mają stanowić podstawę prac projektowych
analiza stanu istniejącego - analiza opisu stanu obecnego jest podstawą do koncepcji nowego systemu. Koncepcja jest udokumentowanym opisem proponowanej zmiany z uwzględnieniem sugerowanych rozwiązań biznesowych i technicznych
koncepcja systemu informatycznego - opis koncepcji systemu informatycznego zamyka ten etap prac i rozpoczyna etap wykonawczy, gdzie większość działań to czynności rutynowe. W trakcie tych prac korzysta się z unifikacji i standaryzacji pewnych rozwiązań. Jakie standardy i w jakim zakresie będą stosowane w procesie wytwarzania, należy zdecydować i udokumentować przed przystąpieniem do wykonania
normatywy - wykorzystywane w procesie realizacji mogą dotyczyć wielu obszarów aktywności, od metodyki zarządzania projektem do szczegółowych rozwiązań programistycznych. Często przyjęcie jednego standardu wymusza stosowanie innych lub zarządzenia wewnętrzne zmuszają do stosowania pewnych zunifikowanych rozwiązań. W dokumentacji systemu powinna znaleźć się informacja o tym, jakie standardy mają zastosowanie w realizowanych projekcie oraz jakie są przesłanki takiej decyzji
projekt struktury informacyjnej - kolejne punkty węzłowe to techniczna realizacja koncepcji i wykonanie zapisanych tam rozwiązań. W szczególności uszczegóławiana jest struktura informacyjna projektu. Szczegółowy projekt techniczny opisuje wszystkie zastosowane rozwiązania technologii zbierania, przetwarzania i przechowywania danych wraz z ich dokładnym opisem, szatą graficzną i innymi wymogami koniecznymi do realizacji programowej
projekt technologii przetwarzania - w tym punkcie opisujemy szczegóły technologii obliczeń i przetwarzania w systemie informatycznym. Częstotliwość pozyskiwania danych, ich sposób ujmowania i przetwarzania, okresy archiwizacji, procesy integracji i inne działania manipulacji na danych wraz z algorytmami, stanowią tę część dokumentacji i realizowanych prac
wybór technologii - wybór technologii zależy w dużym stopniu od poprzednich zadań jakie zostały postawione projektowi
synteza projektu - w projektach inwestycyjnych bardzo ważnym dokumentem są założenia techniczno-ekonomiczne przedsięwzięcia. Wydaje się, że opracowanie podobnego dokumentu, stanowiącego syntezę wykonanych już prac, jest wskazane dla uzyskania wymaganej jakości systemu informatycznego. Dokument taki pozwoli zespołowi wykonawców jasno zdefiniować zakres prac do wykonania
projekt oprogramowania - przystępujemy do prac wykonawczych nad oprogramowaniem, które są poprzedzone pracami planistycznymi samej realizacji programów składających się na system. Planujemy metodę wytwarzania oprogramowania, rozdzielamy prace i określamy zasady wytwarzania, testowania i integracji
oprogramowanie wykonanie - kolejny punkt węzłowy to współbieżna realizacja poszczególnych programów składających się na system. Ta faza prac przysparza najwięcej problemów i jest szczególnie trudna z uwagi na złożoność i ujawnianie się niezgodności i usterek powstałych wcześniej
organizacyjne przygotowanie obiektu - równocześnie można rozpocząć prace przygotowawcze w obiekcie, gdzie będzie wdrażany system informatyczny. W zależności od konkretnego systemu zakres tych prac może być bardzo różny. Może zaistnieć, na przykład, potrzeba budowy ośrodka obliczeniowego, sieci komputerowej, instalacji sprzętu, dokonania adaptacji i zmian organizacyjnych na potrzeby wdrożenia i przyszłej eksploatacji systemu informatycznego
eksperyment na danych modelowych - wykonanie oprogramowania i przygotowanie obiektu pozwala na przeprowadzenie eksperymentu na danych modelowych. Na wcześniej przygotowanym zbiorze danych modelowych sprawdzana jest poprawność oprogramowania i procedur organizacyjnych. Jest to próba generalna przed wdrożeniem systemu do eksploatacji użytkowej. Tutaj usuwamy wszelkie usterki oraz przygotowywana jest eksploatacja systemu
instalacja systemu - instalacja systemu to wykonanie czynności początkowych polegających na instalacji oprogramowania systemowego i użytkowego. Instalacja zbiorów z danymi na określonych nośnikach, instalacja sprzętu komputerowego i sieciowego oraz wdrożenie przygotowanych procedur organizacyjnych
wdrożenie pilotowe - wdrożenie systemu polega na ostatecznym przejściu z dotychczasowego sposobu prac na nowy wprowadzany zgodnie z założeniami projektu. Procesy wdrożeniowe, mają na celu dopasowanie szczegółów organizacyjnych i technicznych eksploatacji nowego rozwiązania
projekt eksploatacyjny - na etapie końcowych prac realizacyjnych przygotowywane są dokumenty i instrukcje konieczne dla sprawnej eksploatacji systemu informatycznego. Wykonane opracowania mają nie tylko gwarantować sprawną eksploatację, ale również niezbędne informacje techniczne konieczne w sytuacjach awaryjnych
eksploatacja i rozwój - w projekcie powinien być opisany system zbierania informacji eksploatacyjnych. Każdy system informatyczny powinien być modyfikowany i rozwijany nie tylko z powodu szybkich zmian w technologii informatycznej, ale również na skutek nowych potrzeb biznesowych użytkownika
Kolejność realizacji poszczególnych prac w systemie informatycznym jest ustalana indywidualnie dla każdego systemu w zależności od konkretnych warunków realizacji. Uwarunkowania realizacyjne i przyjęta taktyka wykonawcza decydują o tym, w jakiej kolejności wykonywane są prace. Taktyka realizacji musi jednak przestrzegać zależności technologicznych między poszczególnymi pracami. Dla realizacji konkretnych zadań potrzebne są produkty innych prac i stąd powstaje konieczność wcześniejszego ich wykonania. Te związki technologiczne muszą być zachowane w procesie realizacji systemu informatycznego. Dla ułatwienia pracy zespołowi wykorzystującemu metodykę punktów węzłowych, wskazuje się związki technologiczne między zadaniami. Utworzona jest sieć działań, gdzie zadania powiązane są związkami przyczynowo-skutkowymi. Dla każdego zadania zostaje określony poprzednik i następnik wśród zadań z listy. W ten sposób powstaje sieć zależności określająca konieczną technologię realizacji prac zapisanych na liście.
Metodyka punktów węzłowych jest próbą strukturalizowania prac wykonywanych w procesie realizacji typowego systemu przetwarzania danych. Metodyka punktów węzłowych koncentruje się jedynie na realizacji systemu informatycznego, całkowicie pomijając problemy organizacji zespołu projektowego, komunikacji, zarządzania ryzykiem w projekcie, zmianami, czy innymi zagadnieniami istotnymi z punktu widzenia zarządzania projektem. W związku z tym należy to podejście traktować jako próbę opracowania metodyki, a nie pełnowartościową metodykę realizacji systemu informatycznego, ale zarazem obrazuje to skalę problemów, jakie stoją przed zespołami, które opracowują i utrzymują w stanie aktualnym inne metodyki realizacji systemów informatycznych.