D. Zarz膮dzanie danymi informacyjnymi, bazy danych, systemy informatyczne i zarz膮dzanie projektami
Metody organizacji dokument贸w tekstowych.
Metody wyszukiwania dokument贸w tekstowych.
Systemy zarz膮dzania bazami danych (SZBD): Poj臋cie, architektura, przyk艂ady.
Podstawowe modele danych. Encje i powi膮zania mi臋dzy encjami; diagramy ERD.
Relacyjny model danych. J臋zyki zapyta艅 relacyjnych. Podstawowe instrukcje j臋zyka SQL w zakresie manipulowania danymi (nazwa, przeznaczenie).
Elementy zarz膮dzania relacyjnymi bazami danych.
Zastosowania BD: Przeznaczenie baz danych; cykl 偶ycia aplikacji opartych o baz臋 danych.
System informacyjny: System informatyczny (SI) a system informacyjny. Geneza i zale偶no艣ci pomi臋dzy nieformalnym, formalnym i technicznym systemem informacyjnym.
Cykl 偶ycia systemu informatycznego: Modele cyklu 偶ycia systemu informatycznego i ich cechy wsp贸lne.
Zastosowania SI: Klasyfikacja zastosowa艅 system贸w informatycznych. Poj臋cie system贸w ERP, CRM, HRM, CAD, CAM (obja艣nienie skr贸t贸w i w艂a艣ciwo艣ci klas system贸w).
Bezpiecze艅stwo SI: Bezpiecze艅stwo bierne i czynne system贸w informatycznych. 殴r贸d艂a zagro偶e艅 bezpiecze艅stwa system贸w informatycznych; przyk艂ady zagro偶e艅 i sposoby ograniczania ich wp艂ywu. Polityka bezpiecze艅stwa systemu informatycznego; sk艂adowe, podstawy i konstruowanie. Zasady tworzenia hase艂 i post臋powania z has艂ami.
Zarz膮dzanie projektami informatycznymi. Czynniki krytyczne sukcesu. Rola i zadania kierownika projektu. Struktura organizacyjna projektu. Struktura prac w projekcie. Harmonogramowanie. Technika Gantta. Techniki sieciowe. Estymacja parametr贸w projektu - przyk艂ady technik. Metoda punkt贸w funkcyjnych. Zarz膮dzanie ryzykiem. Zarz膮dzanie projektami z wykorzystaniem wska藕nik贸w ekonomicznych. Oprogramowanie wspieraj膮ce zarz膮dzanie projektami.
_______________________________________________________________
Systemy zarz膮dzania bazami danych (SZBD): Poj臋cie, architektura, przyk艂ady.
Poj臋cie SZBD
System zarz膮dzania baz膮 danych (SZBD) jest to zestaw program贸w umo偶liwiaj膮cych tworzenie i eksploatacj臋 bazy danych. System zarz膮dzania baz膮 danych jest oprogramowaniem og贸lnego przeznaczenia. System bazy danych sk艂ada si臋 z bazy danych, systemu zarz膮dzania baz膮 danych i ewentualnie z zestawu aplikacji wspomagaj膮cych prac臋 poszczeg贸lnych grup u偶ytkownik贸w.
ARCHITEKTURA SZBD
Wsp贸艂czesne SZBD sk艂ada si臋 z 3 cz臋艣ci:
j膮dra,
interfejsu
zestawu narz臋dzi
Funkcje j膮dra okre艣laj膮 kategorie dzia艂a艅:
organizacja plik贸w
mechanizmy dost臋pu
zarz膮dzanie transakcjami
zarz膮dzanie s艂ownikami
zarz膮dzanie zapytaniami
sporz膮dzanie kopii zapasowych
Zadania realizowane przez j膮dro SZBD mo偶na sklasyfikowa膰 w spos贸b nast臋puj膮cy:
Zarz膮dzanie zbiorami danych
tworzenie nowych zbior贸w (jednostek logicznej struktury DBMS, tj. baz danych, tabel, ...)
usuwanie zbior贸w
modyfikowanie struktury zbior贸w
wstawianie, aktualizowanie i usuwanie danych
Wyszukiwanie informacji
w odpowiedzi na zapytania otrzymane od program贸w klienckich, j膮dro bazy danych zwraca dane b臋d膮ce wynikiem odpowiedniego przeszukania bazy danych, a programy klienckie zajmuj膮 si臋 ich prezentacj膮 u偶ytkownikowi po ewentualnej dalszej obr贸bce;
Zarz膮dzanie baz膮 danych jako ca艂o艣ci膮
tworzenie kont u偶ytkownik贸w
definiowanie uprawnie艅 dost臋pu
monitorowanie dzia艂ania bazy danych
Przyk艂ady
Wa偶niejsze systemy zarz膮dzania baz膮 danych聽
Systemy profesjonalne (stosowane przez agendy rz膮dowe, banki, biblioteki i聽 du偶e firmy)
Oracle Corporation - http://www.oracle.com聽 (wg. wielko艣ci obrot贸w) oko艂o 50%, Informix i Ingres oko艂o 15%
Oracle to druga co do wielko艣ci po Microsofcie firma zajmuj膮ca si臋 oprogramowaniem.
Oracle DBMS - na oko艂o 90 platformach sprz臋towych, Personal Oracle na PC, Oracle Media Server, Oracle Video Server, obs艂uga hurtowni danych.
PROGRESS Application Development Environment (http://www.progress.com/progress/index.htm) - jeden z najbardziej popularnych w Polsce.
DB/2 (IBM http://www.ibm.com/us/) lub DRDA (Distributed Relational DataBase Architecture), Rozproszona Relacyjna Architektura Baz Danych.
Informix Software Polska, w Polsce od 1994 roku - http://www.informix.com.pl/聽
Ingres (Computer Associates, CA), w Polsce Rodan Systems Sp. z.o.o - http://www.rodan.pl/
Sybase PL - http://www.sybase.com.pl/聽
Adabas C, Siemens Nixdorf Polska - http://www.sni.pl/聽
Gupta SQLBase (Centura Corporation - http://www.guptaworldwide.com/)聽
Microsoft SQL Server for Windows NT/2000/XP - http://msdn.microsoft.com/library/default.asp?url=/nhp/default.asp?contentid=28000409聽
聽DBMS dla mniejszych firm (ma艂e systemy na komputery osobiste i stacje robocze)
Microsoft Access (Windows - http://www.eu.microsoft.com/poland) - 艂atwy, SQL, j臋zyk Access Basic
FoxPro (Microsoft - http://www.microsoft.com) pod DOS, Windows, Mac, Unix, wersja polska.
Paradox (Borland) - Query by Example, pytania przez analogie. - http://www.prestwood.com/forums/paradox/files/聽
dBase (Borland - http://www.borland.com), od 1981 roku (dBase II pod CP/M), wersja polska ISIS wzorowany na dBase, darmowy.
MySQL - http://www.mysql.com/聽
_____________________________________________________________________
Podstawowe modele danych. Encje i powi膮zania mi臋dzy encjami; diagramy ERD.
Podstawowe modele danych
Model danych (a w odniesieniu do konkretnej realizacji m贸wi si臋 cz臋sto o architekturze systemu baz danych) mo偶na rozumie膰 jako zbi贸r og贸lnych zasad pos艂ugiwania si臋 danymi.
Zbi贸r ten obejmuje trzy g艂贸wne cz臋艣ci:
Definicja danych: zbi贸r regu艂 okre艣laj膮cych struktur臋 danych, tj. to co wcze艣niej okre艣la艂em jako logiczn膮 struktur臋 bazy danych (w odr贸偶nieniu od ni偶szego poziomu organizacji zapisu stosowanego wewn臋trznie przez j膮dro bazy danych);
Operowanie danymi: zbi贸r regu艂 dotycz膮cych procesu dost臋pu do danych i ich modyfikacji;
Integralno艣膰 danych: zbi贸r regu艂 okre艣laj膮cych, kt贸re stany bazy danych s膮 poprawne (a wi臋c zarazem jakie operacje prowadz膮ce do modyfikacji danych s膮 dozwolone).
Rozr贸偶nia si臋 trzy g艂贸wne typy (lub generacje) modeli danych:
Proste modele danych. Dane zorganizowane s膮 w struktur臋 rekord贸w zgrupowanych w plikach. G艂贸wnymi dost臋pnymi operacjami s膮 operacje na rekordach (ewentualnie na ich poszczeg贸lnych polach). Z tego rodzaju modelem danych mieli艣my do czynienia dot膮d na 膰wiczeniach.
Klasyczne modele danych. Nale偶膮 do nich modele hierarchiczne, sieciowe i relacyjne. Modele relacyjne stanowi膮 najbardziej popularn膮 obecnie podstaw臋 architektur system贸w baz danych.
Semantyczne modele danych. Semantyka to inaczej znaczenie. Klasyczne modele danych nie dostarczaj膮 艂atwego sposobu odczytania informacji o semantyce danych, st膮d podejmuje si臋 pr贸by stworzenia innych modeli, uzupe艂niaj膮cych ten brak. Przyk艂adem cz臋艣ciowej realizacji tego programu s膮 obiektowe modele danych.
Hierarchiczny model danych
Hierarchiczny model danych jest pewnym rozszerzeniem modelu prostego, opartego na rekordach sk艂adaj膮cych si臋 z p贸l i zgrupowanych w plikach. W schemacie hierarchicznym wprowadza si臋 typy rekord贸w i zwi膮zki nadrz臋dny-podrz臋dny pomi臋dzy nimi.
Definicja danych
Typ rekordu to nazwana struktura danych, z艂o偶ona ze zbioru nazwanych p贸l; ka偶de pole s艂u偶y do zapisu pojedynczego atrybutu obiektu opisywanego przez rekord, i charakteryzuje si臋 okre艣lonym typem danych, np. liczba ca艂kowita, napis, data, itp. Na og贸艂 jedno z p贸l danego typu rekordu wyr贸偶nia si臋 jako klucz, tj. unikalny identyfikator rekordu w艣r贸d rekord贸w danego typu (cz臋sto przydzielany do艣膰 arbitralnie, podobnie jak np. nr albumu studenta lub nr PESEL w ewidencji ludno艣ci) oraz zak艂ada si臋 uporz膮dkowanie rekord贸w wg. warto艣ci jednego z p贸l (zwykle klucza, cho膰 niekoniecznie).
Relacja nadrz臋dny-podrz臋dny: typy rekord贸w tworz膮 struktur臋 drzewa, tj. ka偶dy typ rekordu (z wyj膮tkiem najwy偶szego w hierarchii, tzw. korzenia -- root) zwi膮zany jest z dok艂adnie jednym typem nadrz臋dnym. Zarazem ka偶dy okre艣lony rekord typu podrz臋dnego jest zwi膮zany z okre艣lonym rekordem w艂a艣ciwego typu nadrz臋dnego.
Operowanie danymi
Typowe operacje na danych w tym modelu to wyszukiwanie rekord贸w okre艣lonego typu, podrz臋dnych wzgl臋dem danego rekordu, i spe艂niaj膮cych warunki dotycz膮ce zawarto艣ci okre艣lonych p贸l; usuwanie lub dodawanie rekord贸w i edycja ich p贸l. Realizowane s膮 poprzez funkcje lub procedury pisane w j臋zykach programowania o charakterze zazwyczaj proceduralnym, np. C.
Integralno艣膰 danych
Podstawowe warunki integralno艣ci wynikaj膮 z samej definicji struktury danych modelu:
Ka偶dy rekord (z wyj膮tkiem korzenia) musi by膰 powi膮zany z rekordem nadrz臋dnym w艂a艣ciwego typu; a wi臋c np. usuni臋cie rekordu nadrz臋dnego wi膮偶e si臋 z usuni臋ciem wszystkich wzgl臋dem niego podrz臋dnych. Nie mo偶na wstawi膰 rekordu bez powi膮zania go z rekordem nadrz臋dnym.
Zawarto艣膰 ka偶dego pola rekordu musi odpowiada膰 typowi danych z definicji danego typu rekordu.
Itp.
Wida膰, 偶e model hierarchiczny ma wiele wsp贸lnego ze struktur膮 systemu plik贸w.
Dane z okre艣lonego poziomu maj膮 odniesienie do jednego zbioru nadrz臋dnego. Mog膮 natomiast generowa膰 odniesienia do wielu zbior贸w ni偶szego rz臋du. Przyk艂adem takiej struktury jest lokalizacja plik贸w w pami臋ci komputera, czyli jedn膮 z wa偶nych funkcji systemu operacyjnego jest zarz膮dzanie hierarchicznym modelem bazy danych, w kt贸rym danymi s膮 zasoby komputera
Sieciowy model danych
Sieciowy model danych w og贸lnym zarysie niewiele odbiega od hierarchicznego. W miejsce zwi膮zku nadrz臋dny-podrz臋dny pomi臋dzy rekordami wprowadza si臋 w nim tzw. typ kolekcji (set), kt贸ry jest z艂o偶onym typem danych pola zawieraj膮cym odniesienia do innych rekord贸w okre艣lonego typu. Tzn. okre艣lenie typu kolekcji polega na podaniu typu rekordu-,,w艂a艣ciciela'' i typu rekord贸w-element贸w kolekcji (oraz ew. klucza porz膮dkowania element贸w). Operowanie danymi ma te偶 charakter proceduralny: typowe operacje to wyszukiwanie rekordu na podstawie zawarto艣ci p贸l i/lub przynale偶no艣ci do danego wyst膮pienia typu kolekcji, i dokonywanie modyfikacji bie偶膮cego rekordu.
Warunki integralno艣ci danych, poza oczywistymi ju偶 wi臋zami dotycz膮cymi zgodno艣ci zawarto艣ci p贸l rekordu z okre艣leniem typu rekordu i unikalno艣ci p贸l kluczowych, mog膮 by膰 formu艂owane w terminach wymogu przynale偶no艣ci rekordu do jakiego艣 wyst膮pienia okre艣lonego typu kolekcji.
Zachowanie hierarchicznych zale偶no艣ci jest bardzo trudne, poniewa偶 rzeczywisto艣膰 z regu艂y jest bardziej skomplikowana. Je艣li zbudujemy cho膰by jedno dodatkowe po艂膮czenie, kt贸re zak艂贸ca struktur臋 hierarchiczn膮, otrzymujesz model sieciowy
Relacyjny model danych
Definicja danych
Model relacyjny oparty jest na tylko jednej podstawowej strukturze danych -- relacji. Poj臋cie relacji mo偶na uwa偶a膰 za pewn膮 abstrakcj臋 intuicyjnego poj臋cia tabeli, zbudowanej z wierszy i kolumn, w kt贸rej na przeci臋ciu ka偶dej kolumny z ka偶dym wierszem wyst臋puje okre艣lona warto艣膰.
Baza danych jest zbiorem relacji, o nast臋puj膮cych w艂asno艣ciach:
Ka偶da relacja w bazie danych jest jednoznacznie okre艣lona przez swoj膮 nazw臋.
Ka偶da kolumna w relacji ma jednoznaczn膮 nazw臋 (w ramach tej relacji).
Kolumny relacji tworz膮 zbi贸r nieuporz膮dkowany. Kolumny nazywane bywaj膮 r贸wnie偶 atrybutami.
Wszystkie warto艣ci w danej kolumnie musz膮 by膰 tego samego typu. Zbi贸r mo偶liwych warto艣ci element贸w danej kolumny nazywany bywa te偶 jej dziedzin膮.
R贸wnie偶 wiersze relacji tworz膮 nieuporz膮dkowany zbi贸r; w szczeg贸lno艣ci, nie ma powtarzaj膮cych si臋 wierszy. Wiersze relacji nazywa si臋 te偶 encjami.
Ka偶de pole (przeci臋cie wiersza z kolumn膮) zawiera warto艣膰 atomow膮 z dziedziny okre艣lonej przez kolumn臋. Brakowi wartosci odpowiada warto艣膰 specjalna NULL, zgodna z ka偶dym typem kolumny (chyba, 偶e zosta艂a jawnie wykluczona przez definicj臋 typu kolumny).
Ka偶da relacja zawiera klucz g艂贸wny -- kolumn臋 (lub kolumny), kt贸rej warto艣ci jednoznacznie identyfikuj膮 wiersz (a wi臋c w szczeg贸lno艣ci nie powtarzaj膮 si臋). Warto艣ci膮 klucza g艂贸wnego nie mo偶e by膰 NULL.
Do wi膮zania ze sob膮 danych przechowywanych w r贸偶nych tabelach u偶ywa si臋 kluczy obcych. Klucz obcy to kolumna lub grupa kolumn tabeli, o warto艣ciach z tej samej dziedziny co klucz g艂贸wny tabeli z ni膮 powi膮zanej.
Np. baza danych instytucji sk艂adaj膮cej si臋 z wielu zak艂ad贸w mo偶e zawiera膰 tabele zak艂ady i pracownicy: tabela zak艂ady zawiera m. in. kolumny kod_zakladu (klucz g艂贸wny), nazwa, adres, kierownik,...; a tabela pracownicy: kolumny nr_prac (klucz g艂贸wny), nazwisko, zak艂ad, pok贸j, telefon, email,...; kolumna zak艂ady.kierownik mo偶e by膰 kluczem obcym odnosz膮cym si臋 do kolumny pracownicy.nr_prac; za艣 kolumna pracownicy.zak艂ad - kluczem obcym odnosz膮cym si臋 do zak艂ady.kod_zak艂adu, etc. Unika si臋 w ten spos贸b powielania tych samych danych w r贸偶nych tabelach, co m. in. u艂atwia utrzymanie zgodno艣ci pomi臋dzy zawarto艣ci膮 bazy danych a stanem faktycznym.
Operacje na danych
W teoretycznym opisie modelu relacyjnego operacje na danych definiuje si臋 w terminach tzw. algebry relacyjnej. Operatory algebry relacyjnej maj膮 za argumenty jedn膮 lub wi臋cej relacji, a wynikiem ich dzia艂ania zawsze jest te偶 relacja.
Selekcja. Selekcja jest operacj膮 jednoargumentow膮, okre艣lon膮 przez warunek dotycz膮cy warto艣ci kolumn danej relacji. Wynikiem jej jest relacja zawieraj膮ce te wszystkie encje (wiersze) wyj艣ciowej relacji, kt贸rych atrybuty spe艂niaj膮 dany warunek.
Rzut. Rzut to operacja jednoargumentowa okre艣lona przez podzbi贸r zbioru kolumn danej relacji, daj膮ca w wyniku tabel臋 sk艂adaj膮c膮 si臋 z tych偶e kolumn wyj艣ciowej relacji.
Iloczyn kartezja艅ski. Argumentami s膮 dwie relacje, wynikiem -- relacja, ktorej wiersze s膮 zbudowane ze wszystkich par wierszy relacji wyj艣ciowych. Operacja o znaczeniu raczej teoretycznym.
R贸wnoz艂膮czenie. Argumentami s膮 dwie relacje, posiadaj膮ce kolumny o tych samych dziedzinach np. klucz g艂贸wny jednej z nich i klucz obcy drugiej. Wynikiem jest tabela otrzymana z iloczynu kartezja艅skiego relacji wyj艣ciowych poprzez selekcj臋 za pomoc膮 warunku r贸wno艣ci tych ,,wsp贸lnych'' atrybut贸w.
Z艂膮czenie naturalne. Powstaje z r贸wnoz艂膮czenia dw贸ch tabel poprzez rzutowanie usuwaj膮ce powtarzaj膮ce si臋 kolumny z艂膮czenia. Rzeczywi艣cie jest to operacja bardziej ,,naturalna'' ani偶eli r贸wnoz艂膮czenie.
Z艂膮czenia zewn臋trzne. Tu sprawa si臋 komplikuje. Z艂膮czenia zewn臋trzne tworzone s膮 podobnie jak z艂膮czenie naturalne, lecz z pozostawieniem w tabeli wynikowej tak偶e wierszy, dla kt贸rych nie zachodzi r贸wno艣膰 atrybut贸w z艂膮czenia: w przypadku z艂膮czenia lewostronnego z艂膮czenie naturalne uzupe艂nia si臋 o wiersze z pierwszego argumentu nie posiadaj膮ce odpowiednika (wierszu o r贸wnym atrybucie z艂膮czenia) w drugim argumencie; ,,brakuj膮ce'' atrybuty przyjmuj膮 warto艣膰 NULL. W z艂膮czeniu prawostronnym robi si臋 to samo, ale wzgl臋dem drugiego argumentu. Wreszcie z艂膮czenie obustronne obejmuje obydwie tabele wyj艣ciowe t膮 sam膮 operacj膮.
Suma. Suma jest operatorem dzia艂aj膮cym na dw贸ch zgodnych relacjach (to jest o tych samych kolumnach), produkuj膮cym relacj臋 kt贸rej wiersze s膮 sum膮 teoriomnogo艣ciow膮 wierszy z relacji wyj艣ciowych.
Przeci臋cie. Przeci臋cie znowu wymaga dw贸ch zgodnych tabel, wynikiem jest tabela zawieraj膮ca wiersze wsp贸lne dla obu argument贸w.
R贸偶nica. R贸偶nica jest okre艣lona dla dw贸ch zgodnych relacji i odpowiada dok艂adnie r贸偶nicy teoriomnogo艣ciowej zbior贸w wierszy tabel wyj艣ciowych.
Algebra relacyjna mo偶e by膰 uwa偶ana za proceduralny j臋zyk zapyta艅 modelu relacyjnego. To znaczy, 偶e dowolna informacja jaka jest do uzyskania z relacyjnej bazy danych mo偶e by膰 wydobyta za pomoc膮 ci膮gu operacji algebry relacyjnej.
W praktyce w programowaniu aplikacji opartych na relacyjnych bazach danych nie korzysta si臋 na og贸艂 z j臋zyka proceduralnego, lecz z deklaratywnego j臋zyka opartego na tzw. rachunku relacyjnym (na og贸艂 jest to SQL). R贸偶nica polega na tym, 偶e w j臋zyku proceduralnym formu艂uje si臋 sekwencj臋 krok贸w prowadz膮cych do po偶膮danego wyniku, natomiast j臋zyk deklaratywny s艂u偶y do sformu艂owania tego, jaki wynik chcemy otrzyma膰. Oczywi艣cie zapytanie sformu艂owane w j臋zyku deklaratywnym musi zosta膰 prze艂o偶one na pewn膮 procedur臋 aby mog艂o by膰 wykonane -- jest to zadaniem implementacji DBMS. Bez znajomo艣ci 偶argonu algebry relacyjnej trudno jest jednak chocia偶by zrozumie膰 dokumentacj臋 system贸w zarz膮dzania baz danych (czy nawet opisy sk艂adni SQL).
Integralno艣膰 danych
Model relacyjny dostarcza dodatkowych, specyficznych dla siebie postaci regu艂 integralno艣ci:
Integralno艣膰 encji: ka偶da tabela musi posiada膰 klucz g艂贸wny, a warto艣ci klucza g艂贸wnego musz膮 by膰 w ramach tabeli unikalne i nie r贸wne NULL. W szczeg贸lno艣ci, zapobiega to wyst膮pieniu w tabeli powt贸rze艅 wierszy.
Integralno艣膰 referencyjna: ka偶da warto艣膰 klucza obcego mo偶e by膰 albo r贸wna jakiej艣 warto艣ci klucza g艂贸wnego wyst臋puj膮cej w tabeli powi膮zanej, lub (ewentualnie) NULL. Poci膮ga to za sob膮 konieczno艣膰 okre艣lenia regu艂y post臋powania w wypadku usuwania wiersza z tabeli powi膮zanej, co mog艂oby uniewa偶ni膰 niekt贸re warto艣ci kluczy obcych w tabelach do niej si臋 odnosz膮cych. W gr臋 wchodz膮 trzy postacie takiej regu艂y:
Restricted: usuni臋cie wiersza jest zabronione, dop贸ki nie zostan膮 usuni臋te lub odpowiednio zmodyfikowane wiersze z innych tabel, kt贸rych warto艣ci kluczy obcych sta艂yby si臋 wskutek tej operacji niewa偶ne;
Cascades: usuni臋cie wiersza powoduje automatyczne usuni臋cie z innych tabel wszystkich wierszy, dla kt贸rych warto艣ci kluczy obcych sta艂y si臋 niewa偶ne;
Nullifies: niewa偶ne warto艣ci kluczy obcych ulegaj膮 zast膮pieniu przez NULL.
W praktyce zazwyczaj jest po偶膮dane stosowanie dalszych warunk贸w integralno艣ci (integralno艣膰 dodatkowa). Na og贸艂 istniej膮 w DBMS mechanizmy narzucenia takich warunk贸w, sformu艂owanych w j臋zyku algebry relacyjnej lub zbli偶onym.
Encje
Encja - oznacza interesuj膮c nas obiekt, co艣 co istnieje i jest rozr贸偶nialne od innych obiekt贸w tego samego typu (np.: samoch贸d). Przyjmuje si臋, 偶e encja jest dalej nierozbieralna.
Przyk艂ady zbior贸w encji:
osoby,
samochody,
cz臋艣ci zamienne,
Obiekt w zale偶no艣ci od poziomu abstrakcji traktujemy jako encj臋 lub zbi贸r encji. Encje mog膮 istnie膰 rzeczywi艣cie, b膮d藕 s膮 wprowadzane jako obiekty abstrakcyjne.
ERD zajmuje si臋 modelowaniem zwi膮zk贸w pomi臋dzy zbiorami encji.
2.2 Metody definiowania zbior贸w encji:
ekstencjonalnie 聳 wyliczenie element贸w np.: {m臋ski, 偶e艅ski, nijaki}, {Pn, Wt, 艢r, Czw, Pt, So, Ni}, {a, b, c,...,x,y, z}, {0, 1,..., 9},
intencjonalnie 聳 specyfikacja w艂asno艣ci np.:聽
,
operacje algebry zbior贸w,
operacje logiczne,
nie sprecyzoowane np.: nazwisko,
2.3 Atrybuty encji:
Informacja o encji jest wyra偶ana przez zbi贸r par (atrybut, warto艣膰), np.:
kolor =聯blue聰,
waga = 45,
cena = 120,
ilo艣膰 = 3
聽
Dany zbi贸r atrybut贸w mo偶e by膰 traktowany jako typ encji. Zwykle w tabelach umieszcza si臋 zbiory encji tego samego typu.
2.4 Klucz
Pojedynczy atrybut lub ich zestaw pozwalaj膮cy jednoznacznie zidentyfikowa膰 encj臋. W danym zbiorze mo偶e by膰 wiele kluczy.
Powi膮zania mi臋dzy encjami (zb. Encji) /relacje.
Za艂o偶enia:
encje s膮 rozr贸偶nialne,
musi istnie膰 klucz,
istnienie klucza w艣r贸d atrybut贸w zale偶y od interpretacji i zasi臋gu bazy danych,
je偶eli zbi贸r atrybut贸w jest 聯nieodpowiedni聰 to przy okre艣laniu klucza mog膮 by膰 wykorzystane atrybuty innych encji wchodz膮cych w sk艂ad zwi膮zku, np.:
Rys. Przyk艂ad klucza z艂o偶onego
2.5 Zalety diagram贸w zwi膮zk贸w encji
niezale偶no艣膰 od systemu,
przejrzysto艣膰,
艂atwo艣膰 interpretacji
Diagramy ERD
ERD (ang. Entity Relationship Diagrams) - Diagramy zwi膮zk贸w Encji.
Diagramy zwi膮zk贸w encji przekszta艂caj膮 rzeczywisty 艣wiat na zbiory entek oraz relacji zachodz膮cych mi臋dzy nimi. Znajduj膮 one szerokie zastosowanie w projektowaniu baz danych, zw艂aszcza przy analizie zale偶no艣ci funkcyjnych, usuwaniu problem贸w zwi膮zanych z redundancj膮 danych oraz przy organizacji struktury bazy.
Technik臋 t膮 wykorzystuje si臋 r贸wnie偶 przy projektowaniu i specyfikacji oprogramowania nie tylko na etapie dotycz膮cym projektu baz danych, ale i przy projekcie i analizie poszczeg贸lnych modu艂贸w oprogramowania.
Celem tego opracowania jest pokazanie do czego i w jaki spos贸b wykorzystywane s膮 diagramy zwi膮zk贸w encji oraz zapoznanie projektanta z technikami i notacjami ERD, oraz schematami post臋powania przy usuwaniu typowych problem贸w maj膮cych miejsce przy projektowaniu baz danych.
_______________________________________________________________
5.Relacyjny model danych. J臋zyki zapyta艅 relacyjnych. Podstawowe instrukcje j臋zyka SQL w zakresie manipulowania danymi (nazwa, przeznaczenie).
Dane w relacyjnych bazach danych grupowane s膮 w tablicach. Ka偶da tablica sk艂ada si臋 z wierszy i kolumn. Wiersze danej tablicy reprezentuj膮 konkretne wyst膮pienie rekordu, natomiast jej kolumny to pola tych rekord贸w. Terminologia stosowana w teorii baz danych jest nast臋puj膮ca:
tablice to relacje
wiersze relacji to krotki
kolumny relacji nazywane s膮 atrybutami
Kolejnym poj臋ciem z teorii relacji jest dziedzina, kt贸ra jest zbiorem warto艣ci, do kt贸rego nale偶膮 aktualne warto艣ci w danej kolumnie. Dziedzin臋 nale偶y okre艣li膰 w schemacie poj臋ciowym bazy i nada膰 jej odpowiedni膮 nazw臋. Kolumny z ni膮 zwi膮zane mog膮 mie膰 lecz nie musz膮 mie膰 tej samej nazwy.
Oto przyk艂adowe relacje:
autorzy:
ID_Autora |
Imi臋 |
Nazwisko |
1 |
Agnieszka |
Lesicka |
2 |
Krzysztof |
Barteczko |
4 |
Andrzej |
Marciniak |
7 |
Craig |
Hunt |
Ksi膮偶ki:
Sygnatura |
Tytu艂 |
Wydaw |
Rok wyd. |
100 |
TCP/IP |
ReadMe |
1996 |
200 |
Og贸lne struktury danych |
NAKOM |
1995 |
300 |
Turbo Pascal |
NAKOM |
1994 |
500 |
Turbo Vision |
NAKOM |
1994 |
500 |
Programowanie obiektowe w c++ |
LUPUS |
1994 |
Autor-Ksi膮偶ka:
Sygnatura |
Id_Autora |
200 |
1 |
300 |
4 |
400 |
4 |
500 |
2 |
100 |
7 |
Podstawow膮 w艂asno艣ci膮 relacyjnej struktury jest to, 偶e zwi膮zki mi臋dzy krotkami s膮 reprezentowane tylko przez warto艣ci danych w kolumnach, pochodz膮cych ze wsp贸lnej dziedziny. Cech膮 charakterystyczn膮 podej艣cia relacyjnego jest to, 偶e ca艂a informacja w bazie danych, czyli faktyczne dane jak i zwi膮zki mi臋dzy nimi, jest przedstawiona w spos贸b jednolity w艂a艣nie za pomoc膮 tablic. Liczno艣ci膮 relacji nazywamy liczb臋 krotek; liczno艣膰 relacji "Autorzy" wynosi zatem 4, a relacji "Ksi膮偶ki" 5.
Definicja Relacji
Niech b臋d膮 zbiory D1, D2,..., Dn niekoniecznie r贸偶ne. R jest relacj膮 na tych zbiorach je艣li jest to zbi贸r uporz膮dkowanych n-krotek , takich, 偶e d1 c D1, d2 c D2, ..., dn c Dn.ZbioryD1,聽..., 聽Dn nazywamy dziedzinami relacji R, n za艣 nazywamy liczb膮 cz艂on贸w relacji. Relacje jednocz艂onowe nazywamy unarnymi, relacje dwucz艂onowe nazywamy binarnymi a relacje n-cz艂onowe nazywamy n-arnymi.
Inna,r贸wnowa偶na definicja relacji m贸wi, 偶e relacj膮 R na zbiorach D1, D2, ..., Dn jest dowolny podzbi贸r iloczynu kartezja艅skiego D1xD2x...xDn.
Krotki relacji nie musz膮 by膰 uporz膮dkowane w 偶aden spos贸b, gdy偶 relacja jest zbiorem, a w zbiorach uporz膮dkowania si臋 nie wymaga. W zwi膮zku z tym w dowolnej relacji mo偶na w spos贸b dowolny zmieni膰 kolejno艣膰 krotek a uzyskana w ten spos贸b relacja nie ulegnie zmianie. Jednak cz臋sto zdarzaj膮 si臋 sytuacje, w kt贸rych wyst臋puje jakie艣 uporz膮dkowanie krotek relacji wed艂ug warto艣ci jednego lub kilku p贸l (warto艣ci atrybutu). Ma to na celu na przyk艂ad u艂atwienie i przyspieszenie procesu wyszukiwania informacji. Je艣li chodzi o uporz膮dkowanie dziedzin (kolumn) relacji to z matematycznego punktu widzenia ich przestawienie powoduje zmian臋 relacji. Jednak, poniewa偶 u偶ytkownicy odwo艂uj膮 si臋 do kolumn za pomoc膮 ich nazwy a nie po艂o偶enia w tablicy w wi臋kszo艣ci system贸w baz danych ograniczenie to pomija si臋 i przyjmujemy, 偶e uporz膮dkowanie kolumn jest nie znacz膮ce.
Cz臋sto zdarza si臋, 偶e warto艣ci pewnego atrybutu danej relacji jednoznacznie identyfikuj膮 krotki tej relacji. Przyk艂adem mo偶e by膰 relacja "Ksi膮偶ki" gdzie takim atrybutem jest "Sygnatura". Ka偶da krotka tej relacji ma inn膮 warto艣膰 tego atrybutu. Mo偶na zatem u偶y膰 tego atrybutu do jednoznacznego odr贸偶nienia krotek tej relacji. Taki atrybut nazywamy kluczem g艂贸wnym relacji. Nie jest regu艂膮, 偶e klucz g艂贸wny sk艂ada si臋 z jednego atrybutu; jest to przypadek szczeg贸lny. W ka偶dej jednak relacji istnieje pewna kombinacja atrybut贸w maj膮ca zdolno艣膰 jednoznacznej identyfikacji krotek. Na przyk艂ad w relacji "Autor聽-聽Ksi膮偶ka" tak膮 kombinacj膮 jest para atrybut贸w (Sygnatura,聽ID_Autora). Taka kombinacja istnieje dla ka偶dej relacji dlatego, 偶e relacja jest zbiorem. Poniewa偶 zbiory nie zawieraj膮 identycznych element贸w, wi臋c ka偶da krotka danej relacji jest r贸偶naod innych, wi臋c co najmniej kombinacja wszystkich atrybut贸w ma w艂asno艣膰 identyfikacji. W praktyce zazwyczaj nie korzysta si臋 jednak ze wszystkich atrybut贸w. Istniej膮 takie relacje, dla kt贸rych wiele atrybut贸w ma w艂asno艣膰 identyfikacji; m贸wimy wtedy, 偶e relacje te maj膮 wi臋cej ni偶 jeden klucz kandyduj膮cy. Dodatkowym poj臋ciem jest klucz obcy. Atrybut relacji R1 jest jej kluczem obcym, je艣li nie jest onkluczem g艂贸wnym tej relacji ale jego warto艣ci s膮 warto艣ciami klucza g艂贸wnego innej relacji R2.Zaznaczmy, 偶e dost臋p do element贸w relacji za pomoc膮 relacyjnego subj臋zyka danych nie musi by膰 realizowany za pomoc膮 klucza g艂贸wnego. Na przyk艂ad operacje wyszukiwania nie musz膮 odbywa膰 si臋 po warto艣ciach atrybut贸w kluczowych, lecz mog膮 dotyczy膰 dowolnego pola relacji.
Normalizacja
Jedynymi relacjami dozwolonymi w modelu relacyjnym s膮 relacje spe艂niaj膮ce nast臋puj膮cy warunek:
Ka偶da warto艣膰 w relacji, tj. ka偶da warto艣膰 atrybutu w ka偶dej krotce, jest warto艣ci膮 atomow膮 (warto艣ci膮 nie rozk艂adaln膮).
Chodzi o to aby ka偶demu elementowi tablicy znajduj膮cemu si臋 na przeci臋ciu dowolnego wiersza i dowolnej kolumny odpowiada艂a pojedyncza warto艣膰, a nie zbi贸r warto艣ci. Relacja, kt贸ra spe艂nia ten warunek nazywana jest relacj膮 znormalzowan膮.
Relacja przed normalizacj膮:
D# |
LC |
|
|
C# |
ILO艢膯 |
D1 |
C1 |
300 |
|
C2 |
200 |
|
C3 |
400 |
|
C4 |
200 |
|
C5 |
100 |
|
C6 |
100 |
D2 |
C1 |
300 |
|
C2 |
400 |
D3 |
C2 |
200 |
D4 |
C2 |
200 |
|
C4 |
300 |
|
C5 |
400 |
relecja po normalizacji:
D# |
C# |
ILO艢膯 |
D1 |
C1 |
300 |
D1 |
C2 |
200 |
D1 |
C3 |
400 |
D1 |
C4 |
200 |
D1 |
C5 |
100 |
D1 |
C6 |
100 |
D2 |
C1 |
300 |
D2 |
C2 |
400 |
D3 |
C2 |
200 |
D4 |
C2 |
200 |
D4 |
C4 |
300 |
D4 |
C5 |
400 |
Rysunki powy偶ej przedstawiaj膮 przyk艂ad procesu normalizacji.
Relacj臋 "przed normalizacj膮" zdefiniowano na dw贸ch dziedzinach: D#, i LC. Jednak elementami dziedziny LC s膮 r贸wnie偶 relacje (zdefiniowane na dziedzinach C# i ILO艢膯. W zwi膮zku z tym relacja ta jest relacj膮 nie znormalizowan膮. Relacja "po normalizacji" , kt贸ra jest r贸wnowa偶na poprzedniej ale ju偶 znormalizowana. Pierwsza relacja jest z punktu widzenia definicji relacj膮 dwucz艂onow膮, ale nie wszystkie jej dziedziny s膮 proste (dziedzina prosta to taka, kt贸rej wszystkie elementy s膮 atomowe). Relacja druga jest relacj膮 tr贸jcz艂onow膮, kt贸rej wszystkie dziedziny s膮 proste, jest wi臋c znormalizowana. W podej艣ciu relacyjnym bierze si臋 pod uwag臋 tylko relacje znormalizowane. Powodem tego jest uproszczenie struktury danych, kt贸re z kolei powoduje uproszczenie operator贸w w subj臋zyku da- nych. Uproszczenia te nie ograniczaj膮 w niczym mo偶liwo艣ci reprezentowania objekt贸w.
Aby dok艂adniej om贸wi膰 zagadnienie normalizacji wprowad藕my poj臋cie zale偶no艣ci funkcjonalnej. Atrybut Y relacji R jest zale偶ny funkcjonalnie od atrybutu X wtedy i tylko wtedy, gdy ka偶dej warto艣ci atrybutu X odpowiada dok艂adnie jedna warto艣膰 atrybutu Y. Wynika z tego, 偶e je艣li dana warto艣膰 atrybutu Y wyst臋puje w wielu krotkach relacji R to je艣li atrybut X jest zale偶ny od Y to w tych krotkach musi wyst膮pi膰 ta sama warto艣膰 X. Przyk艂adem mo偶e by膰 relacja "Ksi膮偶ka" gdzie atrybutem funkcjonalnie zale偶nym od atrybutu sygnatura jest atrybut autor, tytu艂, itd. Poj臋cie zale偶no艣ci funkcjonalnej mo偶na rozszerzy膰 do przypadku gdy atrybuty X lub Y s膮 atrybutami z艂o偶onymi. Ma to miejsce w przypadku gdy dopiero jaka艣 kombinacja (np. para) atrybut贸w jednoznacznie okre艣la nam obiekt i ma wy偶ej wymienione w艂a艣ciwo艣ci. Kolejnym poj臋ciem, kt贸re nale偶y wprowadzi膰 jest pe艂na zale偶no艣膰 funkcjonalna. M贸wimy, 偶e atrybut Y jest w pe艂ni funkcjonalnie zale偶ny od atrybutu X, je艣li jest funkcjonalnie zale偶ny od niego ale nie jest funkcjonalnie zale偶ny od 偶adnego podzbioru atrybutu X (atrybut X jest atrybutem z艂o偶onym). W dotychczas przytoczonych przyk艂adach wszystkie atrybuty relacji by艂y funkcjonalnie zale偶ne od ich kluczy. W takim przypadku m贸wimy, 偶e relacja jest w co najmniej trzeciej postaci normalnej.
Pierwsza, druga, trzecia i czwarta posta膰 normalna.
Na wst臋pie wprowad藕my og贸ln膮 definicj臋 czwartej postaci normalnej.
Relacja R jest w czwartej postaci normalnej wtedy i tylko wtedy, gdy w dowolnej chwili ka偶da jej krotka sk艂ada si臋 z warto艣ci klucza g艂贸wnego identyfikuj膮cej pewn膮 jednostk臋 oraz zbioru wzajemnie niezale偶nych warto艣ci atrybut贸w opisuj膮cych j膮. Dwa atrybuty s膮 funkcjonalnie niezale偶ne je艣li 偶aden nie jest funkcjonalnie zale偶ny od drugiego.
Relacja jest w pierwszej postaci normalnej wtedy i tylko wtedy gdy wszystkie dziedziny podstawowe zawieraj膮 jedynie warto艣ci atomowe. Czyli relacja jest w pierwszej postaci normalnej je艣li jest znormalizowana.
Relacja jest w drugiej postaci normalnej je艣li jest w pierwszej postaci normalnej i ka偶dy jej atrybut niekluczowy jest w pe艂ni funkcjonalnie zale偶ny od klucza g艂贸wnego.
Relacja jest w trzeciej postaci normalnej je艣li ka偶dy jej wyznacznik jest kluczem kandyduj膮cym
Relacja R jest w czwartej postaci normalnej wtedy i tylko wtedy, gdy w ka偶dym przypadku zale偶no艣ci wielowarto艣ciowej w R, np. atrybutu B od atrybutu A, wszystkie atrybuty tej relacji s膮 r贸wnie偶 funkcjonalnie zale偶ne od atrybutu A. WHERE pracownicy.id_dzia艂u= (SELECT dzia艂y.id_dzia艂u from dzia艂y where dzia艂y.nazwa_dzia艂u="ACCOUNTING");
System informacyjny: System informatyczny (SI) a system informacyjny. Geneza i zale偶no艣ci pomi臋dzy nieformalnym, formalnym i technicznym systemem informacyjnym.
System informacyjny - Uk艂ad odpowiednich element贸w, kt贸rego zadaniem jest przetwarzanie danych.
System informatyczny - Wyodr臋bniona cz臋艣膰 systemu informacyjnego, w kt贸rym do przetwarzania danych zastosowano 艣rodki i metody informatyczne, a zw艂aszcza sprz臋t i oprogramowanie komputer贸w.
_____________________
9. Cykl 偶ycia systemu informatycznego: Modele cyklu 偶ycia systemu informatycznego i ich cechy wsp贸lne.
Cykl 偶ycia SI (Software Life Cycle) - proces z艂o偶ony z ci膮gu wzajemnie sp贸jnych etap贸w pozwalaj膮cy na pe艂ne i skuteczne stworzenie, a nast臋pnie u偶ytkowanie SI, obejmuje okres od momentu u艣wiadomienia potrzeby istnienia systemu do momentu jego wycofania z eksploatacji.
Fazy cyklu 偶ycia systemu informatycznego:
1. Faza strategiczna 2. Okre艣lenie wymaga艅
3. Analiza systemowa
4. Projektowanie (modelowanie)
5. Implementacja
6. Dokumentacja
7. Testowanie
8. Instalacja
9. Konserwacja, rozw贸j
Modele cyklu 偶ycia SI:
- Kaskadowy (liniowy, waterfall)
- Przyrostowy - Ewolucyjny
- Model Fry'ego (model system贸w baz danych)
- Model z prototypem聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 - Spiralny
Model liniowy
- poszczeg贸lne fazy wyst臋puj膮 jedna po drugiej
- rozpoznane s膮 wszystkie potrzeby - tworzenie, a potrzeby si臋 zmieniaj膮
- interpretacja 艣cis艂a - traktuje wszystkie fazy jako okresy, kt贸re nie nak艂adaj膮 si臋 na siebie i s膮 wykonywane w 艣ci艣le sekwencyjnym porz膮dku
- interpretacja og贸lna - poszczeg贸lne fazy maja raczej charakter koncepcyjny i mog膮 wyst臋powa膰 w tym samym czasie
Za艂o偶enia
Na pocz膮tku ka偶dego projektu istnieje stabilny zestaw potrzeb.
Potrzeby nie zmieniaj膮 si臋 w trakcie 偶ycia systemu.
Proces budowy systemu odbywa si臋 stopniowo.
Ka偶dy kolejny etap oznacza uszczeg贸艂owienie i przybli偶enie do rzeczywisto艣ci.
Powoduje to powr贸t do poprzednich etap贸w w momencie, gdy nie mamy wszystkich element贸w procesu projektowego.
Model ewolucyjny
Ca艂y system podzielony jest na modu艂y.
Ka偶dy z nich odbywa przej艣cie przez kolejne fazy cyklu budowy systemu.
Na ko艅cu dzia艂a艅 projektowych przyst臋puje si臋 do specjalnego etapu polegaj膮cego na integracji ca艂ego systemu i przeprowadzeniu test贸w.
W systemie podzielonym na cz臋艣ci, kt贸rych realizacja przesuni臋ta jest w czasie, 艂atwiej nad膮偶y膰 ze zmieniaj膮cym si臋 celem dzia艂ania.
Poniewa偶 ka偶dy modu艂 stanowi pocz膮tkowo organicznie odr臋bn膮 cz臋艣膰, nale偶y zwr贸ci膰 uwag臋 na niebezpiecze艅stwo zwi膮zane z konieczno艣ci膮 integracji modu艂贸w w ca艂o艣膰.
Model przyrostowy
Analiza dla ca艂o艣ci systemu, powstaje koncepcja wst臋pna systemu.
System dzielony na modu艂y, a nast臋pnie projektowany, programowany i testowany dla ka偶dego z nich osobno.
Sp贸jno艣膰 zapewniaj膮 - wsp贸lne ko艅cowe etapy - integracja systemu.
Model Fry'ego (model system贸w baz danych)
Etapy
Sformu艂owanie zagadnienia i Analiza potrzeb - zabranie potrzeb informacyjnych u偶ytkownik贸w.
Modelowanie logiczne (konceptualne) - opis modelu danych i przysz艂ych proces贸w w systemie.
Projektowanie fizyczne - projekt struktury zbior贸w, wzorc贸w dokument贸w, technologii przetwarzania, specyfikacji wewn.
Programowanie i Wdro偶enie - stworzenie bazy danych i oprogramowanie zastosowa艅.
Eksploatacja i kontrola.
Modyfikacja i adaptacja - udoskonalenie funkcjonowania w wyniku pojawiaj膮cych si臋 nowych potrzeb.
Model z prototypem
Og贸lne okre艣lenie wymaga艅.
Budowa prototypu.
Weryfikacja prototypu przez u偶ytkownika.
Modyfikacja prototypu.
Realizacja zgodnie z modelem kaskadowym.
Eksploatacja i modyfikacja systemu.
Metody wykorzystywane do tworzenia prototyp贸w
Niepe艂na realizacja - ?.
J臋zyki wysokiego poziomu.
Wykorzystywanie gotowych procedur i bibliotek.
Generatory interfejsu u偶ytkownika.
Szybkie programowanie (quick and dirty ?).
Paper ? - rozrysowanie interfejsu systemu.
Wady
wysoki koszt tworzenia systemu
wymaganie posiadanie odpowiednich narz臋dzi
u偶ytkownik do艣膰 d艂ugo oczekuje na gotowy system (a prototyp jest szybko)
Zalety
wszystkie nieporozumienia s膮 szybko wykrywane (u偶ytkownik a projektant)
szybkie wykrycie b艂臋d贸w i brak贸w
zaanga偶owanie u偶ytkownika
szybkie wykonanie prototypu
...
Model spiralny
Fazy
Rozpoczyna si臋 ustalenia wst臋pnych wymaga艅 i analizy ryzyka ich realizacji.
Na tej podstawie buduje si臋 pierwszy prototyp i tworzy konceptualny plan ca艂o艣ci.
Po kolejnej analizie ryzyka buduje si臋 nast臋pny prototyp i tworzy si臋 wymagania dotycz膮ce oprogramowania.
Powstaje plan tworzenia i odbywa si臋 kolejny etap zako艅czony projektem oprogramowania.
Kolejny obieg przynosi projekt szczeg贸艂owy, oprogramowanie, testy i wdro偶enie.
Zastosowania SI: Klasyfikacja zastosowa艅 system贸w informatycznych. Poj臋cie system贸w ERP, CRM, HRM, CAD, CAM (obja艣nienie skr贸t贸w i w艂a艣ciwo艣ci klas system贸w).
Systemy ERP (Enterprise Resource Planning) (Planowanie Zasob贸w na potrzeby Przedsi臋wzi臋膰) wywodz膮 si臋 historycznie z opracowanego w latach 70. standardu zarz膮dzania gospodark膮 materia艂ow膮 MRP (Material Requirements Planning). Kolejna generacja tego standardu - MRP II - zosta艂a rozbudowana o elementy zwi膮zane z procesem sprzeda偶y i wspieraj膮ce podejmowanie decyzji na szczeblach strategicznego zarz膮dzania produkcj膮. W modelu MRP II bierze si臋 pod uwag臋 wszystkie sfery zarz膮dzania przedsi臋biorstwem: przygotowanie produkcji, planowanie i kontrol臋 produkcji oraz sprzeda偶 i dystrybucj臋 wyprodukowanych d贸br. Nowy model zarz膮dzania - wprowadzany pod nazw膮 ERP lub MRP III - ma za pomoc膮 bardziej wszechstronnych analiz i integracji informacji umo偶liwia膰 szybkie planowanie i korekcj臋 dzia艂alno艣ci gospodarczej przedsi臋biorstw. W Polsce cz臋sto mamy do czynienia z aplikacjami typu ERP, a nie z wdro偶eniem typu ERP. W艣r贸d fachowc贸w nie ma zgody, czy system nie obejmuj膮cy sfery produkcji zas艂uguje na miano ERP.
ERP - Enterprise Resource Planning (Planowanie Zasob贸w na potrzeby Przedsi臋wzi臋膰)
- jest systemem obejmuj膮cym ca艂o艣膰 proces贸w produkcji i dystrybucji;聽
- integruje r贸偶ne obszary dzia艂ania przedsi臋biorstwa;聽
- usprawnia przep艂yw krytycznych dla jego funkcjonowania informacji;聽
- pozwala b艂yskawicznie odpowiada膰 na zmiany popytu.聽
Obszary dzia艂a艅 system贸w klasy ERP:聽
- obs艂uga klient贸w - baza danych o klientach, przetwarzanie zam贸wie艅, obs艂uga specyficznych zam贸wie艅 (produkty na 偶膮danie: assembly-to-order, make-to-order), elektroniczny transfer dokument贸w (EDI);聽
- produkcja - obs艂uga magazynu, wyznaczanie koszt贸w produkcji, zakupy surowc贸w i materia艂贸w, ustalanie terminarza produkcji, zarz膮dzanie zmianami produkt贸w (np. wprowadzanie usprawnie艅), MRP I/II, prognozowanie zdolno艣ci produkcyjnych, wyznaczanie krytycznego poziomu zasob贸w/zapas贸w, kontrola procesu produkcji (m.in. 艣ledzenie drogi produktu w zak艂adach produkcyjnych) itd.聽
- finanse - prowadzenie ksi臋gowo艣ci, kontrola przep艂ywu dokument贸w ksi臋gowych, pozwala przygotowywa膰 raporty finansowe zgodnie z oczekiwaniami poszczeg贸lnych grup odbiorc贸w (np. podzia艂 na central臋 i oddzia艂y);聽
- integracja w ramach 艂a艅cucha logistycznego - cecha,聽 wyznaczaj膮ca przysz艂e kierunki system贸w ERP, powoduj膮c ich wyj艣cie poza przedsi臋biorstwo.聽
CRM - Customer Relationship Management (Zarz膮dzanie Relacjami z Klientami) - to kompleksowa strategia biznesowa dotycz膮ca obszar贸w organizacji, technologii i kapita艂u ludzkiego, kt贸rej celem jest podnoszenie warto艣ci firmy poprzez budowanie warto艣ciowych relacji z klientami.
聽聽聽Pozwala na zbieranie i wymian臋 informacji o klientach, rynkach i produktach oraz na ich wymian臋 mi臋dzy handlowcami i pracownikami marketingu.
聽聽聽Oprogramowanie tego typu mo偶e funkcjonowa膰 samodzielnie lub by膰 do艂膮czone do systemu ERP.
聽聽聽CRM to zintegrowany system, kt贸ry obs艂uguje marketing, sprzeda偶, serwis i wsparcie techniczne. W jednym miejscu, wysi艂kiem kilku dzia艂贸w przedsi臋biorstwa, s膮 gromadzone dane o kliencie. 聽
HRM - Human Resources Management (Zarz膮dzanie Zasobami Ludzkimi)
jest to strategiczne dysponowanie zasobami ludzkimi, czyli pracownikami. Najbardziej og贸lnie rzecz definiuj膮c w zakres HRM wchodz膮:
1. strategie i plany naboru pracownik贸w i etap贸w przygotowawczych do naboru (w tym: prognozowanie potrzeb w zakresie personelu, rekrutacja, selekcja, zatrudnienie) ,
2. strategie motywowania i utrzymywania pracownik贸w (w tym: planowanie kariery, szkolenie, systemy wynagrodze艅, nagr贸d, dodatk贸w i 艣wiadcze艅),
3. strategie rozstawania si臋 z pracownikami (w tym: plany zwolnie艅, systemy wcze艣niejszych emerytur, systemy zwolnie艅 monitorowanych, rozwi膮zywanie um贸w przez pracownik贸w).
Strategiczna, jednorodna i sp贸jna metoda kierowania najcenniejszym z kapita艂贸w ka偶dej organizacji - lud藕mi, kt贸rzy osobistym i zbiorowym wysi艂kiem przyczyniaj膮 si臋 do realizacji wszystkich za艂o偶onych przez organizacj臋 cel贸w, a tym samym umacniaj膮 jej przewag臋 konkurencyjn膮.
CAD - Computer Aided Design (projektowanie wspomagane komputerowo)
S艂u偶y艂o tylko do graficznego przedstawienia pomys艂u in偶yniera w postaci p艂askiej dokumentacji technicznej. Obecnie coraz cz臋艣ciej przy u偶yciu system贸w CAD powstaj膮 wirtualne modele bry艂owe projektowanych produkt贸w.
Komputerowo wspomagane projektowanie. Oznacza skomputeryzowany proces projektowania cz臋艣ci produkt贸w lub proces dokonywania zmian w wyrobach ju偶 istniej膮cych. Centralnym elementem CAD'u jest komputer z dobrym oprogramowaniem graficznym pozwalaj膮cym projektantowi na manipulowanie geometrycznymi obrazami projektowanych wyrob贸w. Taki system wykonuje prace kre艣larskie (w przesz艂o艣ci r臋czne) - projektant tworzy wzory, a CAD rysuje np. rzuty. Komputer mo偶e symulowa膰 reakcje cz臋艣ci i materia艂贸w w r贸偶nych sytuacjach i przeprowadza膰 r贸偶ne testy. Oszcz臋dza to wiele czasu potrzebnego niegdy艣 na wykonanie projektu. U偶ywaj膮c danych zgromadzonych w pami臋ci komputera u偶ytkownik mo偶e szybko uzyskiwa膰 potrzebne plany i specyfikacje dowolnego produktu w dowolnym czasie. U偶ytkownik mo偶e wykorzystywa膰 CAD do gromadzenia, wyci膮gania, klasyfikowania danych dotycz膮cych r贸偶nych produkt贸w m. in. do automatycznego generowania produkt贸w, kt贸re stanowi膮 podstaw臋 do technologii niskokosztowej. CAD jest bardzo u偶yteczny przy tworzeniu, zapobiega marnotrawstwu czasu projektant贸w przy przemodelowaniu r贸偶nych standardowych element贸w maszyn.
Zastosowanie komputera do projektowania: architektury, uk艂ad贸w elektr., cz臋艣ci maszyn, mebli, ubra艅 i聽in.; systemy CAD wymagaj膮 komputer贸w o聽stosunkowo du偶ej mocy obliczeniowej i聽dobrej grafice, a聽tak偶e wyposa偶enia ich w聽urz膮dzenia (wej艣cia i聽wyj艣cia) pozwalaj膮ce na otrzymanie obraz贸w odpowiedniej jako艣ci; popularnym przyk艂adem takiego systemu jest AUTOCAD dla komputer贸w IBM PC.
CAM - Computer aided manufacturing (wytwarzanie wspomagane komputerowo) Dzi臋ki programom na specjalnych obrabiarkach wytwarzane s膮 ich prototypy.
Systemy CAD/CAM oferuj膮 nast臋puj膮ce mo偶liwo艣ci:
- tworzenie parametrycznego modelu bry艂owego: generowanie rysunk贸w czy prezentacji, zapisanie wielu wariant贸w w bazach danych;
- przeprowadzenie symulacji kinematycznych;
- przeprowadzenie analizy wytrzyma艂o艣ciowej metodami MES;
- wygenerowanie kod贸w steruj膮cych obrabiarkami CNC (frezarki, tokarki, dr膮偶arki elektroerozyjne, wiertarki);
- szybkie wytwarzanie modeli i narz臋dzi;
- wykonywanie operacji kontrolno-pomiarowych
- zarz膮dzanie dokumentacj膮 techniczn膮.
Programy typu CAM mog膮 by膰 programami samodzielnymi i w贸wczas przewa偶nie wyposa偶one s膮 w modu艂 do projektowania CAD. Mog膮 one r贸wnie偶 by膰 nak艂adkami wsp贸艂pracuj膮cymi z aplikacjami CAD.
12. Zarz膮dzanie projektami
Oprogramowanie wspieraj膮ce zarz膮dzanie projektami.
Czynniki krytyczne sukcesu
Projekt - przedsi臋wzi臋cie, w kt贸rym mamy cel, koszty i okres realizacji
Sukces projektu - nie przekroczony czas, d艂ugotrwa艂e zadowolenie klienta
Atrybuty sukcesu projektu:
Wewn臋trzny punkt widzenia (kierownika)
- Zgodno艣膰 ze specyfik膮
- Terminowo艣膰
- Zaplanowane koszty
Zewn臋trzny punkt widzenia (klienta)
- Rezultat rzeczywi艣cie wykorzystywany
- Dla w艂a艣ciwego u偶ytkownika
- Oczekiwana jako艣膰
- Satysfakcja klienta
Sukces projektu - uwarunkowania:
Techniczne mo偶liwo艣ci realizacji
Mo偶liwo艣ci organizacyjne
Efektywno艣膰 rezultatu
Przyczyny niepowodze艅:
Wymagania/cele:
- niejasne, s艂abo zdefiniowane, zmienne, dwuznaczne, m臋tne, nie艣cis艂e
Oceny/szacunki:
- nieprecyzyjne, brak do艣wiadczenia, brak danych historycznych
Pracownicy:
- zbyt p贸藕no zatrudnieni lub w niepe艂nym wymiarze czasu, nieodpowiednie kwalifikacje, „krzywa uczenia”
Finanse:
- brak cel贸w i 艣ledzenia wydatk贸w, brak oceny koszt贸w, zmian w projekcie
Narz臋dzia:
- niew艂a艣ciwie dobrane lub u偶ywane, wymagaj膮ce du偶ych dodatkowych nak艂ad贸w (czasu, koszt贸w), ma艂o efektywne (krzywa uczenia si臋)
Planowanie/kontrola:
- brak udokumentowania plan贸w, brak formalnego systemu zarz膮dzania projektami, niezdefiniowany spos贸b kontaktowania si臋 z u偶ytkowaniem, nieprecyzyjny system 艣ledzenia post臋pu prac.
Technologia:
- z艂y wyb贸r, zbyt skomplikowana, niedojrza艂a, nierozwijalna, niekonserwowana
Z艂o偶ono艣膰 projektu:
- wielko艣膰 przewy偶szaj膮ca mo偶liwo艣ci kontroli, wielko艣膰 zespo艂u, liczno艣膰 kontakt贸w, lokalizacji, du偶a liczba zmian w projekcie
_____________________________
Rola i zadania kierownika projektu
Kierownik projektu - zadania
Planowanie, recenzowanie, dostosowanie, poprawianie
Realizacja: termin贸w, koszt贸w, cel贸w
Spe艂nienie potrzeb i oczekiwa艅 klient贸w
Szkolenie, kierowanie, motywowanie zespo艂u
Dokumentowanie
Kontakty z kierownictwem, klientami, kierownikami etap贸w (podprojekt贸w), dostawcami
Projektowanie, rozw贸j
Scalanie systemu, testowanie
Wdra偶anie, funkcjonowanie
...
Co robi kierownik?
Bezpo艣rednio zarz膮dza prac膮 zespo艂u projektowego
Ocenia, steruje kosztami, terminami i zakresami
Kontaktuje si臋: z komitetem steruj膮cym, cz艂onkami zarz膮du, u偶ytkownikami ko艅cowymi, kontrol膮 jako艣ci, dostawcami us艂ug i towar贸w, pracownikami maj膮cymi wp艂yw na projekt, zespo艂em projektowym, przedsi臋biorstwem (finanse, prawnik, kadry, administracja)
_____________________
Struktura organizacyjna projektu.
Struktura prac w projekcie
Proces planowania
Plan
Zbi贸r dokument贸w ustalaj膮cych, w jaki spos贸b (zadania, kolejno艣膰 realizacji, czas, zasoby) maj膮 by膰 wykonane wszystkie prace w projekcie
Plan mo偶e zawiera膰:
Schematy realizacji prac
Opis sposobu wykonywania prac
Haromonogram, kalkulacje
List臋 za艂o偶e艅, przy kt贸rych opracowano plan
Punkt w臋z艂owy
Zdarzenie kluczowe lub mini cel (cel po艣redni) w planie identyfikowane w spos贸b jednoznaczny przez rezultaty cz膮stkowe
Ci膮g punkt贸w w臋z艂owych rozpoczyna si臋 na pocz膮tku projektu i ko艅czy si臋 wraz z jego uko艅czeniem, wyznaczaj膮c tym samym ci膮g prac doprowadzaj膮cych do realizacji
Czym powinien by膰 punkt w臋z艂owy?
Pomoc膮 do zrozumienia cel贸w projekt贸w
Podstaw膮 do planowania i zarz膮dzania projektem
Elementem 艂膮cz膮cym podprojekt w projekt
Wspomaganiem sprawozdawczo艣ci
Potwierdzeniem osi膮gania rezultat贸w projektu
Czynnikiem psychologicznym
Podstaw膮 do 艣ledzenia i wykazywania post臋p贸w projektu
Struktura prac - definiowanie zada艅
Hierarchiczny podzia艂 (dekompozycja) projektu na elementy sk艂adowe (zadania, wyra藕nie oddzielone od siebie i jednoznacznie identyfikowane poprzez ich rezultat ko艅cowy)
Struktura drzewiasta sk艂adaj膮ca si臋 z:
Podprojekt贸w, projekt贸w cz膮stkowych
Pakiet贸w prac
Grup zada艅
Zada艅
Struktura prac - drzewo
Struktura prac - zasady opisu
Ka偶dy w臋ze艂 w strukturze powinien by膰 zwi膮zany z konkretnym rezultatem ko艅cowym
Ka偶dy w臋ze艂 (i jego rezultat) powinien by膰 przypisany do konkretnej osoby, zespo艂u, firmy - odpowiedzialno艣膰
Uko艅czenie prac przypisanych do w臋z艂a powinno by膰 weryfikowane, tj. poddaj膮ce si臋 kontroli
Ka偶dy w臋ze艂 powinien sk艂ada膰 si臋 z nie mniejszej i nie wi臋kszej liczby podzada艅 ni偶 wykazano w strukturze prac (hierarchiczno艣膰)
Struktura prac - przeznaczenie
Planowanie prac (struktura, zakres)
Szacowanie koszt贸w
Harmonogramowanie
Definiowanie rezultat贸w prac i ich koordynacja
艢ledzenie i kontrola procesu
Okre艣lenie rezultat贸w ko艅cowych
Definiowanie zakres贸w odpowiedzialno艣ci
Identyfikacja ryzyka
__________________________
Harmonogramowanie.
Projekt plan贸w zarz膮dzania:
Niekt贸re plany wi膮偶膮 si臋 z zarz膮dzaniem prac膮:
Plan zada艅 (harmonogram pracy, zadania i zdarzenia w czasie)
Plan punkt贸w w臋z艂owych
Plan zasob贸w
Plan dostaw
Plan eksploatacji
Inne z zarz膮dzaniem jako艣ci膮, np.:
Plan testowania
Plan akceptacji
Plan szkolenia
Plan rewizji i przegl膮d贸w
Plan finansowy
Plan ryzyka
Techniki planowania realizacji projektu
Wykres Gantta
Wykresy punkt贸w w臋z艂owych
Metody analizy sieciowej (CPM, PERT)
Terminologia
Harmonogram - podzia艂 pracy w czasie
Sie膰 (logiczna) - wyra偶aj膮ca nast臋pstwo, tj. kolejno艣膰 wykonywania (reprezentacja zada艅 do wykonania)
Zadanie / Czynno艣膰 / Operacja - dzia艂anie, kt贸rego wynikiem jest osi膮gni臋cie konkretnego celu (musi by膰 zwi膮zane z konkretnym wynikiem ko艅cowym). Ka偶de zadanie ma zdefiniowany punkt pocz膮tkowy oraz ko艅cowy (Start / Koniec) oraz zu偶ywa czas i inne zasoby. Zadania maj膮 swoje poprzedniki i nast臋pniki.
Zdarzenie:
Moment rozpocz臋cia lub zako艅czenia zadania
Punkt w臋z艂owy
Zdarzenia nie zu偶ywaj膮 czasu ani 艣rodk贸w
艢cie偶ka krytyczna - nieprzerwany ci膮g zada艅, od pocz膮tku do ko艅ca siatki zale偶no艣ci o najd艂u偶szym czasie realizacji.
艢cie偶ka krytyczna determinuje czas trwania projektu.
_________________________
Metoda Gantta
Harmonogram realizacji zada艅
Harmonogram szczeg贸lnych zdarze艅
Okre艣lenie termin贸w rozpocz臋cia i zako艅czenia zada艅
Stosowanie wykres贸w punkt贸w w臋z艂owych ma:
Zalety:
Doskona艂e do prezentacji wizualnych
Zrozumia艂e i akceptowalne
Wykonywalne przez kierownika projektu lub podprojektu
________________________________
Wady:
Niezbyt jasno zaznaczone zale偶no艣ci, kt贸re mog膮 by膰 przyczyn膮 b艂臋d贸w planowania
Trudne do zmiany
Trudne w u偶yciu do harmonogram贸w analitycznych
Metody sieciowe (CPM, PERT)
CPM - Critical Path Method
PERT - Program Evaluation and Review Technique
Ustalenie programu dzia艂ania (pe艂nej listy zada艅)
Ustalenie wzajemnych zale偶no艣ci mi臋dzy nimi (poprzedniki, nast臋pniki, „puste”)
Dla ka偶dego zadania niezb臋dne s膮:
Opis zadania
Odpowiedzialno艣膰 personalna
Okre艣lenie pracoch艂onno艣ci
Planowany czas realizacji
Termin rozpocz臋cia zadania (mo偶liwy najwcze艣niejszy / dopuszczalny najp贸藕niejszy)
Termin zako艅czenia j.w.
Dla ka偶dego zadania wyr贸偶niamy cztery terminy:
Dla pocz膮tku zadania:
NWP - najwcze艣niejszy mo偶liwy
NPP - najp贸藕niejszy dopuszczalny
Dla ko艅ca zadania:
NWK - najwcze艣niejszy mo偶liwy
NPK - najp贸藕niejszy dopuszczalny
Reprezentacja zada艅 w metodzie sieciowej
Reprezentacja
艢cie偶ka krytyczna:
Je偶eli dla danego zadania NWP=NPP i NWK=NPK to zadanie ma charakter krytyczny
Wszystkie zadania krytyczne tworz膮 艣cie偶k臋 krytyczn膮, biegn膮c膮 od zdarzenia pocz膮tkowego do ko艅cowego
W ka偶dej sieci istnieje zwykle jedna 艣cie偶ka krytyczna, ale mo偶e wyst膮pi膰 ich wi臋cej
Ka偶de przed艂u偶enie czasu realizacji zadania le偶膮cego na 艣cie偶ce krytycznej musi spowodowa膰 op贸藕nienie terminu uko艅czenia projektu, je偶eli nie zajd膮 偶adne inne zmiany
Ka偶de skr贸cenie czasu realizacji zadania le偶膮cego na 艣cie偶ce krytycznej mo偶e (ale nie musi) spowodowa膰 przyspieszenie terminu uko艅czenia projektu, je偶eli nie zajd膮 偶adne inne zmiany.
艢cie偶ka krytyczna - budowa
Opracowanie struktury sieci i czasu trwania zadania
Wyznaczenie termin贸w najwcze艣niejszych od pocz膮tku do ko艅ca
Wyznaczenie termin贸w najp贸藕niejszych (od ko艅ca)
Odszukanie 艣cie偶ki krytycznej
Metody sieciowe s膮:
Narz臋dziem zarz膮dzania pomagaj膮cym okre艣li膰, co ma by膰 zrobione, aby terminowo osi膮gn膮膰 cel przedsi臋wzi臋cia
Technik膮 dostarczaj膮c膮 kierownictwu informacji ilo艣ciowych niezb臋dnych do podejmowania decyzji
Technik膮 skupiaj膮c膮 uwag臋 kierownika na czynnikach czasu, 艣rodkach pracy mog膮cych podnie艣膰 efektywno艣膰 wykonania przedsi臋wzi臋cia
___________________________
Techniki estymacji
Agenda
Definicja estymacji
Czynniki wp艂ywaj膮ce na poprawno艣膰 estymacji
R贸偶nica pomi臋dzy oszacowaniem czasu a terminem realizacji
Techniki szacowania parametru projektu
Problemy w okre艣leniu parametr贸w projektu
Projekty s膮 zr贸偶nicowane ze wzgl臋du na istniej膮ce do艣wiadczenia oraz uwarunkowania realizacji:
Bardzo dobrze okre艣lone - standardowe
Do艣膰 dobrze okre艣lone
Nowatorskie
Estymacja s艂u偶y do okre艣lenia zasob贸w potrzebnych do realizacji projektu.
Estymacja - jest oszacowaniem, ocen膮 ilo艣ciow膮 nieznanych warto艣ci projektu.
Estymator - (oszacowanie) jest wielko艣ci膮 probabilistyczn膮 a nie deterministyczn膮 (np. najlepszy przypadek, najgorszy, najbardziej prawdopodobny, 艣redni) o pewnym poziomie zaufania i uzyskan膮 przy pewnych za艂o偶eniach (np. czas podr贸偶y, dost臋pno艣膰 sprz臋tu).
Co nale偶y szacowa膰 w projekcie?
Pracoch艂onno艣膰
Kwalifikacje i umiej臋tno艣ci pracownik贸w
Za艂o偶enia i ograniczenia
Urz膮dzenia i materia艂y, ich wykorzystanie
Op艂aty, koszty po艣rednie
Czas pracy urz膮dze艅
Poziom obs艂ugi serwisowej, naprawy
Parametry dostaw
Podr贸偶e
Czas nieprodukcyjny
Wynagrodzenia
Nagrody
Klasy dok艂adno艣ci estymacji
Klasa |
Typ koszt贸w |
Dok艂adno艣膰 |
I |
G艂贸wne |
卤 5% |
II |
Wysokie |
卤 10-15% |
III |
Poboczne (wysokie) |
卤 15-30% |
IV |
Poboczne |
卤 20-25% |
V |
Widoczne |
卤 25-35% |
VI |
Ma艂o wa偶ne, niewielkie |
卤 35% |
Za艂o偶enia estymacji:
Przed przyst膮pieniem do estymacji parametr贸w projektu nale偶y przygotowa膰 list臋 za艂o偶e艅, przy kt贸rych ocena b臋dzie dokonywana, z podzia艂em na:
Za艂o偶enia oczywiste
Przypuszczenia
Np. czas podr贸偶y w zale偶no艣ci od miejsca i pory, wydajno艣膰聽pracownik贸w聽w聽zale偶no艣ci od kwalifikacji
Straty czasu zwi膮zane z projektem:
- podr贸偶e
- spotkania,
- bezw艂adno艣膰,
- wsp贸艂u偶ytkowanie zasob贸w,
- brak motywacji
Straty czasu niezwi膮zane z projektem
- urlopy, dni wolne, 艣wi臋ta
- spotkania niezwi膮zane z projektem
- dokszta艂cenie
- choroby, macierzy艅stwo
- udzia艂 w innych projektach
- telefony
- sprawy osobiste
Inne straty czasu:
- powtarzanie lub dublowanie prac
- wielko艣膰 zespo艂u
- wielko艣膰 projektu
- pomoc innym
Techniki szacowania zasob贸w (1)
Analogia - przypuszczenie poparte do艣wiadczeniem (regu艂a „kciuka” lub „sufitu”) - wymaga posiadania du偶ego do艣wiadczenia w analogicznych (podobnych) projektach.
Ekstrapolacja - parametryzacja - opracowanie formu艂 lub procedur na podstawie istniej膮cych do艣wiadcze艅 i przeniesienie ich na nowe projekty - wykorzystanie mierzalnych parametr贸w projektu, np. liczba modu艂贸w
In偶ynierska - bazuj膮ca na strukturze prac - budowa struktury prac, ocena ka偶dego zadania i sumowanie ocen cz膮stkowych - wg schematu: dekompozycja - estymacja
Inne - metoda delficka „burza m贸zg贸w”
Parametryzacja - metoda linii kodu
,gdzie:
- ilo艣膰 osobom miesi臋cy (pracownik pisze 170 linii kodu oszacowania systemowego/miesi膮c)
- ilo艣膰 linii kodu
- wsp贸艂czynnik trudno艣ci (K=1,2,...3)
Metoda linii kodu - wsp贸艂czynnik trudno艣ci
a = (0....0,5) - do艣wiadczenie zespo艂u
b = (0....0,7) - zmienno艣膰 wymaga艅
c = (0....0,3) - ograniczenia sprz臋towe
d = (0....0,2) - wymagania realizacji zada艅
e = (0....0,4) - ograniczenia zewn臋trzne
K = 1 + a + b +c + d + e
Metoda linii kodu - szacowanie liczebno艣ci zespo艂u i czasu
, gdzie:
- liczebno艣膰 zespo艂u [osoby]
T - czas realizacji zada艅 [m-c]
__________________________________________
Metoda punkt贸w funkcjonalnych - atrybut produktywno艣ci
Wydzielenie atrybut贸w produktywno艣ci zespo艂贸w w projektach informatycznych
Wyznaczenie na podstawie szacowanych warto艣ci atrybut贸w produktywno艣ci ilo艣ci punkt贸w funkcyjnych jako miary produktywno艣ci zespo艂u w projekcie
Estymacja zu偶ycia zasob贸w na realizacj臋 projektu
Atrybuty produktywno艣ci dla nieistniej膮cych system贸w - parametry funkcji u偶ytkownika systemu (elementy przetwarzania informacji w systemie):
- wej艣cie
- wyj艣cie
- zbiory danych wej艣cia
- zbiory danych wyj艣cia
- zapytania
Metoda punkt贸w funkcyjnych - cele
- mo偶liwo艣膰 por贸wnania dw贸ch system贸w pod k膮tem zu偶ycia zasob贸w
- pomiar i analiza produktywno艣ci r贸偶nych zespo艂贸w
- szacunek zasob贸w niezb臋dnych do realizacji
- u艣wiadomienie u偶ytkownikowi wielko艣ci systmu
Metoda punkt贸w funkcyjnych - nieskorygowane punkty (NPF)
NPF - nieskorygowane punkty funkcyjne
Wij - warto艣膰 wsp贸艂czynnika wagi
Nij - ilo艣膰 element贸w w projekcie
i - numer elementu przetwarzania danych
j - numer poziomu z艂o偶ono艣ci danych
Metoda punkt贸w funkcyjnych - czynniki koryguj膮ce
Wyst臋powanie urz膮dze艅 komunikacyjnych
Rozproszenie przetwarzania
Wymagania szybko艣ci dzia艂ania
Skomplikowana logika przetwarza艅
Stopie艅 obci膮偶enia (ilo艣膰 transakcji)
Wprowadzenie danych w trybie bezpo艣rednim
Wydajno艣膰 u偶ytkownika ko艅cowego
Rozproszenie terytorialne (u偶ytkownicy z r贸偶nych dzia艂贸w)
Aktualizacja danych w trybie bezpo艣rednim
Z艂o偶ono艣膰 przetwarzania danych
Przeno艣no艣膰
艁atwo艣膰 instalacji
艁atwo艣膰 obs艂ugi
艁atwo艣膰 wprowadzenia zmian - piel臋gnowanie systemu
Metoda in偶ynierska - bazuj膮ca na strukturze prac
- podzia艂 pracy na zadania (struktura prac)
- estymacja potrzebnych zasob贸w dla ka偶dego drobnego zadania
- sumowanie ocen
- dekompozycja estymacja synteza
Metoda punkt贸w funkcyjnych PF
Kkov - kompleksowy wsp贸艂czynnik koryguj膮cy
Kj - warto艣膰 oceny czynnika koryguj膮cego
Metoda Delficka
- pozyskiwanie wiedzy od grupy ekspert贸w i uzyskanie rzetelnej jednomy艣lnej grupy
- wielokrotna (4 rundy) estymacja parametr贸w przez grup臋 w trybie:
ocena powiadomienie o rezultacie uzasadnienie starych ocen
korekta (por贸wnanie ocen)
- oceny i uzasadnienie s膮 przekazywane ca艂ej grupie (bez podawania konkretnych ekspert贸w)
_________________________________________________
Zarz膮dzanie ryzykiem
„...nie ma nic trudniejszego do zorganizowania, bardziej niebezpiecznego do przeprowadzenia i o bardziej w膮tpliwym pomy艣lnym zako艅czeniu ani偶eli wdro偶enie nowego systemu...”
Co to jest ryzyko?
Sytuacja, kt贸ra si臋 jeszcze nie zdarzy艂a
Mo偶liwe i niepo偶膮dane zdarzenie, kt贸re mo偶e spowodowa膰 jeden lub wiele cel贸w projektu nie zostanie osi膮gni臋ty
Nara偶enie dzia艂a艅 na niepo偶膮dane konsekwencje
Co艣, co mo偶e si臋 zdarzy膰 i spowodowa膰 fiasko projektu w jakim艣 lub wszystkich aspektach.
殴r贸d艂a ryzyka:
SE - otoczenie socjoekonomiczne
TE - otoczenie technologiczne
OR - organizacja
TS - tw贸rcy systemu
PR - projekt
殴r贸d艂a ryzyka - obszary:
Biznes - konkurencja, niepewno艣膰, finanse
U偶ytkownik - klient - wymagania, nastawienie
Technika i technologia - z艂o偶ono艣膰, nowatorstwo, definiowanie i harmonogram dostawcy
Realizacja - profesjonalizm zespo艂u, klienta
Otoczenie
Zarz膮dzanie projektem
殴r贸d艂a ryzyka:
Wewn臋trzne - spowodowane sam膮 natur膮 procesu: projekt = zmiana
Narzucone - obowi膮zuj膮ce warunki, np. czas uko艅czenia, kt贸re mog膮 uczyni膰 cele projektu nieosi膮galne
Wprowadzone
Czynniki ryzyka:
Wystokie wymagania, co do efektywno艣ci i / lub niezawodno艣膰 produktu
Czynniki obiektywne
Du偶a zmienno艣膰 definicji, wymaga艅, organizacji, plan贸w
Systemy heterogeniczne
Brak kultury zarz膮dzania projektem w organizacji
Czynniki ryzyka - etap analizy wymaga艅:
Nieokre艣lony zakres projektu
P艂ynne terminy i plany
殴le zrozumiane wymagania u偶ytkownika
Brakuj膮ce wymagania
Niedoszacowanie
Dwuznaczno艣膰, niesprawdzalno艣膰, niesp贸jno艣膰
Brak analizy wymaga艅 pochodnych
Brak formalizacji wymaga艅 sprawno艣ciowych
Brak kryteri贸w akceptacji
Czynniki ryzyka - zagro偶enia spoza projektu:
Niewype艂niane zobowi膮za艅 przez klienta
Op贸藕nienie dostaw
Z艂a jako艣膰 dostaw
Nieformalno艣膰 zobowi膮za艅
Z艂a jako艣膰 prac podzleceniodawc贸w
Dzia艂anie si艂y wy偶szej
Etap zarz膮dzanie projektem:
Nieudokumentowany lub niezrozumia艂y system realizacji projektu
Nieformalny system zarz膮dzania zmianami
Dopuszczanie problem贸w nieudokumentowanych, nieprzypisanych do os贸b
Brak przegl膮d贸w prac lub ich nieefektywno艣膰
Niejasny spos贸b rozliczania z realizacji zada艅
Brak lub 藕le wytyczone obszary odpowiedzialno艣ci
Niedostateczne zobowi膮zania kontaktowe
Dwa podej艣cia do ryzyka
Wyprzedzaj膮ce (aktywne)
wczesna identyfikacja zagro偶e艅 i ich unikanie.
Kierownik Projektu
Zabezpieczenia na etapie propozycji
Przeciwdzia艂aj膮ce (reaktywne) wykrywanie i naprawianie szk贸d.
Specjalne przegl膮dy i rewizje
Zewn臋trzny nadz贸r
Zabezpieczanie na etapie realizacji
Zarz膮dzanie ryzykiem - potrzeba
Bez ryzyka nie ma korzy艣ci
Je偶eli nie analizujemy ryzyka, to automatycznie trafimy na k艂opoty
Zarz膮dzanie ryzykiem - proces
Realizowany przez specjalist贸w i kierownik贸w
Zwi臋kszaj膮cy szanse osi膮gni臋cia sukcesu do wystarczaj膮cego poziomu pewno艣ci
Wykorzystany we wszystkich fazach projektu
Zarz膮dzanie ryzykiem - struktura procesu
Identyfikacja i dokumentacja potencjalnych 藕r贸de艂 ryzyka
Ryzyko a koszty i korzy艣ci
Ryzyko - je偶eli si臋 wydarzy ma wp艂yw na projekt ze wzgl臋du na:
Dodatkowy koszt
P贸藕niejsze zako艅czenie prac
Obni偶enie funkcjonalno艣ci, zakresu, lub jako艣ci produkt贸w
Dzia艂ania zapobiegawcze
Czynniki ryzyka Dzia艂ania zapobiegawcze
1) Ludzkie s艂abo艣ci 1) W艂a艣ciwy dob贸r zespo艂u i rozdzia艂 zasob贸w
2) Nierealny bud偶et i harmonogram 2) Szczeg贸lne szacowanie koszt贸w,
uwzgl臋dnienie niesprzyjaj膮cych
okoliczno艣ci
Sterowanie ryzykiem
Monitorowanie, 艣ledzenie ryzyka
Eliminowanie, unikanie ryzyka poprzez: protytowanie, wyb贸r danych rozwi膮za艅, projektowanie r贸wnoleg艂e
Minimalizacja, redukcja ryzyka: w艂a艣ciwe planowanie (rezerwa), przenoszenie ryzyka na innych (dostawc贸w, zleceniodawc贸w, klienta)
Kiedy nale偶y identyfikowa膰 ryzyko?
Przed rozpocz臋ciem projektu
Podczas definiowania projektu
W punktach w臋z艂owych projektu
Podczas rewizji i przegl膮d贸w prac i ich jako艣ci
Na ko艅cu ka偶de4j fazy projektu
Ilekro膰 jest to wymagane
Wielokrotnie przez ca艂y cykl 偶ycia projektu
Jak identyfikowa膰 obszary ryzyka?
Metody
Zdrowy rozs膮dek
Do艣wiadczenie osobiste
Do艣wiadczenie innych
Dane historyczne
Wykorzystanie niezale偶nych ekspert贸w
Narz臋dzia i pomoce np. systemy ekspertowe
Techniki
Listy kontrolne
Spotkania definiuj膮ce projekt
Przegl膮dy i rewizje projektu
Konsultacje
Specjalne spotkania identyfikuj膮ce ryzyko
Najwa偶niejsze przyczyny pora偶ek
殴le zrozumia艂e wymagania
Niedoszacowanie czasy i koszty
Nieefektywny system zarz膮dzania
Brak specjalist贸w, kiedy potrzebni
Op贸藕nienie prac przez podwykonawc贸w
Op贸藕nienie w艂asnych prac
Niska jako艣膰 dostarczanych produkt贸w
Wymagana sprawno艣膰 nie do osi膮gni臋cia
_____________________________________________________
Zarz膮dzanie projektami z wykorzystaniem wska藕nik贸w ekonomicznych.
Ocena efektywno艣ci PI
W ocenie projekt贸w internetowych najcz臋艣ciej u偶ywan膮 metod膮 oceny efektywno艣ci przedsi臋wzi臋cia jest wska藕nik ROI (Return On Investment) - metoda oceny zwrotu a inwestycji.
Pomimo tego, 偶e jest to wska藕nik statyczny i nie uwzgl臋dnia zmian warto艣ci pieni膮dza w czasie, to jest prosty w interpretacji i ch臋tnie stosowany we wszelkich obliczeniach wst臋pnych, a tak偶e na potrzeby prezentacji wst臋pnie szacowanych korzy艣ci wdro偶enia projektu
Wska藕nik ROI definiuje si臋 jako stosunek zysk贸w przyniesionych przez inwestycj臋 do pocz膮tkowych nak艂ad贸w inwestycyjnych
Jest to prosty wska藕nik wyliczany w nieskomplikowany spos贸b i cho膰 dosy膰 zgubny, to obok wska藕nika TCO jest szeroko wykorzystywany w wielu dziedzinach
Stosowanie metody ROI nie wyklucza innych metod (np. uwzgl臋dniaj膮cych zmian臋 warto艣ci pieni膮dza w czasie).
18
Zarz膮dzanie projektami
Wyk艂ad V - 22.11.2004
22
Zarz膮dzanie projektami
Wyk艂ad IV - 8.11.2004
24
Zarz膮dzanie projektami
Wyk艂ad VII - 06.12.2004
29
1
32
POZIOM 4
POZIOM 3
POZIOM 2
POZIOM 1
POZIOM 0
Po艂膮czenie z hostem
LAN 1
System B
System A
Sie膰
Terminale
Oprogramowanie
Sprz臋t
Integracja
Podprojekt 2
Podprojekt 1
Projekt
Dokumentacja
Zdefiniowania zada艅
Ocena zasob贸w (ludzie, koszty, sprz臋t, materia艂y) zada艅
Kto i czym?
Ocena czasu realizacji zada艅
Jak d艂ugo?
Za ile?
Scalenie planu
Opracowanie
harmonogramu
Co i kiedy?
Szeregowanie
zada艅
W jakiej kolejno艣ci?
Co?
Cele i organiczenia
Rezultaty, czas, koszty, zasoby
Nr zadania
Opis zadania
Najp贸藕niejszy termin rozpocz臋cia
Najp贸藕niejszy termin zako艅czenia
Najwcze艣niejszy termin rozpocz臋cia
Najwcze艣niejszy termin zako艅czenia
Czas realizacji
Identyfikacja
Ocena
Zapobieganie
Monitorowanie
Poziom 3
Poziom 2
Poziom 1
P3.1
P3.2
P3.3
P2.1
P2.2
P1
P3.1
P3.2
P3.3
P2.1
P2.2
P1