Wprowadzenie do przedmiotu

Wielkość: px
Rozpocząć pokaz od strony:

Download "Wprowadzenie do przedmiotu"

Transkrypt

1 Wprowadzenie do przedmiotu! " # Witam Pastwa serdecznie na pierwszym wykładzie dotyczcym inynierii oprogramowania. Dzisiejszy wykład bdzie troch przypominał ogldanie okolicy z lotu ptaka. Z tej perspektywy nie wida wielu, by moe bardzo wanych, szczegółów, ale za to ma si obraz całoci. I ten obraz całoci, w odniesieniu do inynierii oprogramowania, bd si starał w trakcie dzisiejszego wykładu stworzy. 1

2 Definicja $ # % & % & ' % ' & # % # ( Wprowadzenie (2) Zgodnie ze standardowym słownikiem inynierii oprogramowania opracowanym przez IEEE, inynieria oprogramowania jest to zastosowanie systematycznego, zdyscyplinowanego, ilociowego podejcia do rozwoju, eksploatacji i utrzymania oprogramowania. 2

3 Definicja $ # % & % & ' % ' & # % # ( Wprowadzenie (3) Krótko mówic, jest to zastosowanie inynierskiego podejcia do oprogramowania. Taka definicja jest krótka (i to jest jej zalet), ale niestety nie wyjania zbyt szczegółowo, co wchodzi w zakres inynierii oprogramowania. 3

4 Computing Curricula 2001 Wprowadzenie (4) Okreleniem zakresu wiedzy dotyczcej rónych obszarów informatyki, w tym równie inynierii oprogramowania, od wielu lat zajmuj si wspólnie dwa, najwiksze na wiecie, towarzystwa informatyczne: IEEE Computer Society i Association for Computing Machinery (w skrócie ACM). Oba powstały tu po II Wojnie wiatowej w Stanach Zjednoczonych i maj teraz (razem) około 180 tys. członków na całym wiecie (dla porównania, Polskie Towarzystwo Informatyczne ma około tysica członków). Wydaj wysokiej rangi czasopisma naukowe, organizuj liczne i bardzo wane konferencje oraz zawody dla studentów takie, jak IEEE Computer Society International Design Competition i ACM International Collegiate Programming Contest. 4

5 Computing Curricula 2001 )* - - )* +, Wprowadzenie (5) Pierwsze rekomendacje dotyczce studiów informatycznych powstały pod auspicjami ACM w 1968 roku. IEEE Computer Society opracowało swoje rekomendacje po raz pierwszy w 1977 roku. 5

6 Computing Curricula 2001 Wprowadzenie (6) Pod koniec lat 80-tych oba towarzystwa postanowiły połczy swoje siły i wspólnie opracowały standard nauczania zwany Computing Curricula Dziesi lat póniej powstała nowa wersja zwana Computing Curricula

7 Computing Curricula 2001 % #. % # ' /. ( # # 0 % 1 % # % # ( # 2# 3 4 # % 5 6 # 7 % # 6 Wprowadzenie (7) Inynieria oprogramowania jest jednym z czternastu obszarów informatyki wyodrbnionych w tym dokumencie. 7

8 Inynieria oprogramowania 6 % 8 # % 8 $ (4# # ( ( Wprowadzenie (8) W ramach inynierii oprogramowania jest osiem jednostek wiedzy o charakterze obligatoryjnym (czyli ka dy informatyk musi to wiedzie) i cztery opcjonalne. 8

9 Inynieria oprogramowania 8 # % 8 $ (4# # ( ( Wprowadzenie (9) Wród obowizkowych jednostek wiedzy mamy dwie dotyczce czynnoci poprzedzajcych samo kodowanie programu. Jest to specyfikacja wymaga, czyli ustalenie co budowany system ma robi i projektowanie oprogramowania, czyli w duym uproszczeniu zaproponowanie jego struktury. 9

10 Inynieria oprogramowania 8 # % 8 $ (4# # ( ( Wprowadzenie (10) Kolejne dwie jednostki dotycz walidacji i weryfikacji oprogramowania (czyli, inaczej mówic, kontroli jakoci) i jego ewolucji, czyli utrzymania uytecznoci programu i umiejtnego wprowadzania do niego koniecznych zmian. 10

11 Inynieria oprogramowania 8 # % 8 $ (4# # ( ( Wprowadzenie (11) Inynieria oprogramowania obejmuje równie takie jednostki wiedzy, jak procesy wytwarzania oprogramowania (rozpatruje si tutaj, m.in. róne modele cyklu ycia oprogramowania, co ma potem wpływ na planowanie przedsiwzi programistycznych) i zarzdzanie przedsiwziciami programistycznymi. 11

12 Inynieria oprogramowania 8 # % 8 $ (4# # ( ( Wprowadzenie (12) Ostatnie dwie obowizkowe jednostki wiedzy dotycz narzdzi i rodowisk programistycznych oraz interfejsów programistycznych w skrócie API od ang. Application Programming Interface. 12

13 Inynieria oprogramowania 8 # % 8 $ (4# # ( ( Wprowadzenie (13) Wród jednostek opcjonalnych s metody formalne (czyli o charakterze matematycznym), systemy specjalne (np. systemy czasu rzeczywistego sterujce prac elektrowni, czy lotem samolotu), komponenty programistyczne i zagadnienia dot. niezawodnoci oprogramowania. 13

14 Inynieria oprogramowania 8 # % 8 $ (4# # ( ( Wprowadzenie (14) Polski standard kształcenia dla kierunku Informatyka, przyjty przez Rad Główn Szkolnictwa Wyszego w czerwcu 2006 roku, obejmuje osiem jednostek wiedzy, które według Computing Curricula 2001 maj charakter obligatoryjny. 14

15 Inynieria oprogramowania 8 # % 8 $ (4# # ( ( Wprowadzenie (15) W ramach tego przedmiotu skoncentrujemy si na pierwszych szeciu obszarach, natomiast narzdzia, jak i API bd omawiane w ramach innych przedmiotów. Na przykład takie narzdzia jak kompilatory rónych jzyków programowania bd omawiane przy okazji prezentowania paradygmatów programowania, na których te jzyki si opieraj. W ramach inynierii oprogramowania bdziemy prezentowa tylko narzdzia wspomagajce dotyczce takich zagadnie, jak zarzdzanie konfiguracj, tworzenie modeli w jzyku UML, czy testowanie. Z kolei API bd prezentowane na przedmiotach zwizanych z rónymi obszarami informatyki. Na przykład API dotyczce wybranego systemu operacyjnego bdzie prezentowane w ramach zaj z systemów operacyjnych, API zwizane z pakietami graficznymi na przedmiocie dotyczcym grafiki komputerowej itd. 15

16 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (16) W dalszej czci wykładu chciałbym krótko omówi tematyk kolejnych wykładów, jakie nas czekaj w ramach tego przedmiotu. 16

17 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (17) Zaczniemy od zasad skutecznego działania. 17

18 Pracodawcy si skar # / & # 9 % & 6 # # 1 ' % % Wprowadzenie (18) Szefowie amerykaskich firm informatycznych skar si, e absolwenci amerykaskich uczelni nie potrafi si komunikowa, maj niedostateczne przygotowanie do pracy w zespole i e brak im umiejtnoci skutecznego i produktywnego zarzdzania ich prac indywidualn. Prawdopodobnie tego typu zastrzeenia mona by usłysze równie z ust pracodawców polskich. Dlatego zanim zaczniemy prezentowa róne metody i narzdzia inynierii oprogramowania postanowiłem najpierw przedstawi ogólne zasady skutecznego działania, które stanowi podstaw dla szczegółowych rozwiza i bez rozumienia których trudno oczekiwa satysfakcjonujcych efektów. 18

19 Zasady Covey ego = > 8? 1 - ; % A Wprowadzenie (19) Zasady te bd oparte na słynnej ksice Stephena Covey ego 7 nawyków skutecznego działania. Na slajdzie widzimy okładk do jej wersji dwikowej. Ksika ta została równie wydana w jzyku polskim. 19

20 Zasady Covey ego 8 ; ' / ' / = > $ ' / Wprowadzenie (20) Ogólnie mówic, Stephen Covey proponuje swoim czytelnikom rozwój osobowoci od stanu zalenoci od innych osób, poprzez niezaleno od innych do współzalenoci z innymi osobami. 20

21 # B 0 = 6 B Zasady Covey ego 8 ; ' / ' / $ ' / Wprowadzenie (21) Zaleno od innych osób przejawia si nadmiern tendencj do obarczania tych innych zadaniem opieki nad sob. Osoby zalene wierz, e to inni s odpowiedzialni za ich wykształcenie, brak pracy, czy problemy rodzinne. Oni sami wydaj si mie niewielki wpływ na swoje ycie. Taka postawa rzadko kiedy (jeli kiedykolwiek) prowadzi do skutecznego działania. 21

22 C # 1 B 1 B Zasady Covey ego 8 ; ' / ' / $ ' / Wprowadzenie (22) Niezaleno to wiara we własne siły i zaufanie do siebie. Osoby niezalene s przekonane, e angaujc własn energi, zdolnoci i emocje s w stanie osign wiele, bardzo wiele. 22

23 Zasady Covey ego 8 ; ' / D. 6 6 E $ # 9 % 1 ) 5 9? ' / $ ' / Wprowadzenie (23) Aby przej od zalenoci do niezalenoci Stephen Covey proponuje wdroenie w swoim yciu trzech zasad: trzeba by proaktywnym, trzeba zaczyna majc zawsze koniec (czyli skutki swoich działa) na wzgldzie i trzeba tak zarzdza czasem, aby rzeczy pierwsze w sensie wanoci były równie pierwsze w przydzielaniu im naszego czasu. Aby by skutecznym nie wystarczy te zasady zrozumie i zgodzi si z nimi trzeba je tak głboko wdroy, aby stały si naszymi nawykami. 23

24 Zasady Covey ego F # # 1 B 5 1 ( 8 ; ' / ' / $ ' / Wprowadzenie (24) Wyszym stopniem rozwoju osobowoci od niezalenoci jest współzaleno. Współzaleno pozwala osign rzeczy, które byłyby dla pojedynczej osoby nie do osignicia. Jest to przekonanie, e razem moemy wicej. 24

25 Zasady Covey ego + C 6 % 1 G 1 # / H ' 6 ; ' 8 ; ' / ' / $ ' / Wprowadzenie (25) Rozwój polegajcy na przejciu od niezalenoci do współzalenoci opiera si na kolejnych trzech zasadach, które naley wdroy: trzeba myle o obopólnej korzyci, a nie tylko własnej, trzeba najpierw stara si zrozumie partnera (klienta, szefa, pracownika) a dopiero potem oczekiwa by nas zrozumiano i trzeba dba o synergi. 25

26 Zasady Covey ego 1 + C 6 % 1 G 1 # / H ' 6 ; ' D. 6 6 E $ # 9 % 1 ) 5 9? 8 ; ' / ' / $ ' / Wprowadzenie (26) Do tego dochodzi jeszcze jedna, siódma zasada: ostrz pił, czyli dbaj o cigłe doskonalenia. 26

27 Zasady Covey ego 1 + C 6 % 1 G 1 # / H ' 6 ; ' D. 6 6 E $ # 9 % 1 ) 5 9? Wprowadzenie (27) O tych siedmiu zasadach bdzie mowa na nastpnym wykładzie. Kada z tych zasad skutecznego działania zostanie do dokładnie przedstawiona. Jednak ostateczny efekt bdzie zaleał od tego, w jakim stopniu słuchacze zdecyduj si przeku te zasady w swoje nawyki. 27

28 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (28) Tematem nastpnego wykładu bdzie specyfikacja wymaga. 28

29 Specyfikacja wymaga 8 # % 8 $ (4# # ( ( Wprowadzenie (29) Wykład ten bdzie wprost nawizywał do jednostki wiedzy specyfikacja wymaga. 29

30 Cykl ycia 8 # % 8 Wprowadzenie (30) Inynierskie podejcie do wytworzenia jakiego produktu opiera si zazwyczaj na cyklu ycia obejmujcym przynajmniej trzy fazy: zebranie wymaga, opracowanie projektu i wykonanie produktu. 30

31 Cykl ycia 8 # % 8 Wprowadzenie (31) Jeli, na przykład, kto myli o przedsiwziciu budowlanym, to najpierw trzeba zebra wymagania inwestora dotyczce funkcji, jakie budynek ma pełni i trzeba uwzgldni ograniczenia sformułowane w warunkach zabudowy. 31

32 Cykl ycia 8 # % 8 Wprowadzenie (32) W nastpnej fazie powstaje projekt architektoniczny, który pokazuje, jak zebrane wymagania i nałoone ograniczenia maj by spełnione. 32

33 Cykl ycia 8 # % 8 Wprowadzenie (33) I wreszcie dochodzi do fazy wykonania, dla której punktem wyjcia jest projekt opracowany na podstawie wymaga. 33

34 Cykl ycia 8 # % 8 Wprowadzenie (34) Podobnie powinno by z przedsiwziciem programistycznym. Na pocztku naley zebra wymagania dotyczce systemu, który ma by zbudowany. 34

35 Cykl ycia 8 # % 8!! " # $ "!% & '! ( )* ( +, Wprowadzenie (35) Majc wymagania mona przej do opracowania projektu systemu. Na slajdzie widoczny jest projekt systemu informatycznego przedstawiony w jzyku UML. 35

36 Cykl ycia 8 # % 8!! " # $ "!% & '! ( )* ( +, Wprowadzenie (36) W oparciu o projekt programici tworz kod systemu. Oczywicie, potem naley jeszcze sprawdzi, czy system nie zawiera defektów i czy spełnia wymagania, o które chodziło klientowi. 36

37 Inynieria wymaga 8 # % Wprowadzenie (37) Samo zbieranie i opracowanie wymaga jest tak wanym i trudnym procesem, e mówi si wrcz o inynierii wymaga. Rozumie si przez to fragment inynierii oprogramowania odpowiedzialny za wymagania. 37

38 Inynieria wymaga 8 # % 6 # 9 $ 6 # % :. # % : % # % : Wprowadzenie (38) Proces zbierania i opracowywania wymaga ma najczciej charakter cykliczny. 38

39 Inynieria wymaga 8 # % 6 # 9 $ 6 # % :. # % : % # % : Wprowadzenie (39) Powinien by poprzedzony sformułowaniem problemu (lub problemów), które budowany system informatyczny ma rozwiza i nakreleniem bardzo ogólnej wizji rozwizania. 39

40 Inynieria wymaga 8 # % 6 # 9 $ 6 # % :. # % : % # % : Wprowadzenie (40) Zasadnicza cz procesu zbierania i opracowywania wymaga składa si z trzech faz. Pierwsz faz powinno by zbieranie wymaga. Czsto wymagania pochodz od wielu rónych osób i na dodatek naley uwzgldnia ograniczenia wynikajce np. z ró n ych przepisów prawa. 40

41 Inynieria wymaga 8 # % 6 # 9 $ 6 # % :. # % : % # % : Wprowadzenie (41) Drug faz powinna by analiza wymaga. Wymagania mog by wzajemnie sprzeczne, niejednoznaczne itp. im wczeniej si takie wady wykryje tym lepiej dla całego przedsiwzicia. 41

42 Inynieria wymaga 8 # % 6 # 9 $ 6 # % :. # % : % # % : Wprowadzenie (42) Po analizie wymaga potrzebna jest ich negocjacja. Wykryte defekty, takie jak np. sprzecznoci midzy wymaganiami, naley usun. Zazwyczaj wymaga to negocjacji z wieloma zainteresowanymi osobami i moe by bardzo trudne. Jeli osoby odpowiedzialne za przedsiwzicie uznaj, e wymagania maj ju odpowiedni jako i mona na ich podstawie przej do pracy nad projektem, to proces zbierania i analizy wymaga mona zakoczy. 42

43 Inynieria wymaga 8 # % 8 # % 4 8 # % 4 Wprowadzenie (43) Generalnie wymagania mona podzieli na funkcjonalne i pozafunkcjonalne. Wymagania funkcjonalne opisuj funkcje, jakie ma realizowa system. Przykładem moe by wymaganie, aby budowany system ksigarni internetowej automatycznie wysyłał do wydawcy zamówienia na te tytuły, których liczba w magazynie spadnie poniej 20 sztuk. Wymagania pozafunkcjonalne dotycz takich aspektów, jak wydajno (np. szybko wykonania poszczególnych operacji), czy niezawodno. 43

44 Wykład nt. specyfikacji wymaga $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # C 6 Wprowadzenie (44) W trakcie wykładu powiconego specyfikacji wymaga przedstawiona zostanie metoda specyfikacji wymaga funkcjonalnych zwana przypadkami uycia. Metoda ta staje si coraz bardziej popularna, równie w polskich firmach informatycznych. Zaprezentowane zostan take dobre praktyki dotyczce dokumentu specyfikacji wymaga, zbierania wymaga, ich analizy i negocjacji oraz opisywania wymaga. Ta problematyka zostanie rozwinita w ramach przedmiotu obieralnego Zaawansowana inynieria oprogramowania. 44

45 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (45) Kolejny wykład bdzie powicony kontroli jakoci artefaktów. 45

46 Kontrola jakoci artefaktów 8 # % 8 $ (4# # ( ( Wprowadzenie (46) Jest on bezporednio zwizany z jednostk wiedzy dotyczc walidacji. Zagadnienia te nabieraj szczególnego znaczenia w przypadku budowy tzw. systemów krytycznych, czyli systemów, których awaria moe doprowadzi do utraty zdrowia, a nawet ycia ludzkiego lub spowodowa ogromne straty materialne. 46

47 Artefakty 4 # % : 0 % # 1 Wprowadzenie (47) W trakcie pracy nad systemem informatycznym powstaje cały szereg rónego typu artefaktów: specyfikacja wymaga, testy akceptacyjne, kod programu, podrcznik uytkownika i wiele innych. Oczywicie, musz to by produkty dobrej jakoci nie mog zawiera powanych defektów. 47

48 Artefakty 4 # % : 0 % # 1 Wprowadzenie (48) Dlatego potrzebna jest kontrola jakoci tych artefaktów. 48

49 Kontrola jakoci specyfikacji wymaga 6 # 9 $ 6 # % :. # % : % # % : Wprowadzenie (49) Wiele osób myli o kontroli jakoci, jako ostatniej fazie pracy nad jakim artefaktem. Nie jest to, ogólnie rzecz biorc, najlepsze podejcie. Omawiajc proces zbierania i analizy wymaga przedstawiłem iteracyjny cykl ycia, w którym analiza wymaga i zwizana z ni kontrola jakoci tych wymaga s wykonywane wielokrotnie. 49

50 Rodzaje kontroli jakoci 0 % 9 Wprowadzenie (50) W praktyce kontrola jakoci najczciej przyjmuje posta testowania lub przegldów. Testowanie mona wykona tylko w odniesieniu do działajcego systemu lub jego prototypu. Przegldy s bardziej ogólne: mona je stosowa zarówno do kodu, jak i do specyfikacji wymaga. Istot przegldu jest analiza artefaktów. Analiza ta moe by przeprowadzona przez pojedyncz osob (nazywamy to recenzj) lub te przez zespół osób (najpopularniejszym przykładem tego typu przegldów s inspekcje). 50

51 Wykład nt. kontroli jakoci $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # ' / 7 6 4; Wprowadzenie (51) W trakcie wykładu powiconego kontroli jakoci artefaktów przedstawi krótko najwaniejsze pojcia dotyczce jakoci i testowania, zaprezentuj sposób przeprowadzania inspekcji zgodny ze standardem IEEE 1028 i poka, jak mona oszacowa liczb defektów, jakie zakradły si do artefaktu (łcznie z tymi, które nie zostały w trakcie kontroli jakoci wykryte). 51

52 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (52) Kolejny wykład bdzie powicony jzykowi UML. 52

53 Jzyk UML 8 # % 8 $ (4# # ( ( Wprowadzenie (53) UML jest wykorzystywany m.in. przy projektowaniu systemów informatycznych. Jest te wiele narzdzi komercyjnych i darmowych wspomagajcych tworzenie modeli w jzyku UML (wród narzdzi komercyjnych du popularnoci cieszy si Rational Rose, a jednym z bardziej popularnych darmowych narzdzi jest ArgoUML). 53

54 Wprowadzenie (54) UML jest stosunkowo nowym jzykiem. Jego pierwsza wersja została zaakceptowana w 1997 roku. Na slajdzie jest pokazana strona internetowa dotyczca jzyka UML, która jest utrzymywana przez midzynarodow organizacj OMG zatwierdzajc kolejne wersje tego jzyka. Osoby znajce jzyk angielski znajd na tej stronie wiele cennych informacji na temat jzyka UML. 54

55 Diagramy UML C % # ; C % # ; C % # C % # ' C % # ( ( ( Wprowadzenie (55) Jzyk UML obejmuje wiele rónego typu diagramów, które pozwalaj w sposób graficzny modelowa róne aspekty systemów informatycznych (i nie tylko informatycznych). Tytułem wprowadzenia do jzyka UML przedstawione zostan bardzo proste przykłady diagramu stanów, diagramu przypadków uycia i diagramu sekwencji. Zarówno te wymienione diagramy, jak i pozostałe zostan bardziej szczegółowo omówione w trakcie wykładu powiconego jzykowi UML. 55

56 Diagram stanów I$ I$ 1 $ 4 I$ % ' 1 I$ ' 6 Wprowadzenie (56) Pierwszym diagramem, który chciałbym pokaza jest diagram stanów. Na slajdzie widzimy diagram pokazujcy przeistaczanie si maturzysty w studenta za chwil dokładniej go omówimy. 56

57 Diagram stanów Wprowadzenie (57) Kluczowym elementem na diagramach stanów s oczywicie stany. Stan jest reprezentowany za pomoc owalu z nazw stanu w rodku. 57

58 Diagram stanów ' Wprowadzenie (58) Midzy stanami s przejcia reprezentowane za pomoc strzałki. W przypadku diagramu pokazanego na slajdzie wida, e bdc w stanie Maturzysta mona przej do stanu Kandydat, ale nie odwrotnie. 58

59 Diagram stanów. I$ Wprowadzenie (59) Z przejciem moe by zwizana akcja. W przykładzie pokazanym na slajdzie wida, e przejcie od stanu Maturzysta do stanu Kandydat wie si ze złoeniem podania na studia. 59

60 Diagram stanów < ' $ Wprowadzenie (60) Akcje s poprzedzane znakiem ukonej kreski tym samym, jaki jest wykorzystywany jako symbol dzielenia. 60

61 Diagram stanów 9 I$ Wprowadzenie (61) Pocztek jest zaznaczany małym ciemnym kółkiem. Std zaczyna si chodzenie po stanach. 61

62 Diagram stanów I$ I$ 1 $ 4 I$ % ' 1 I$ ' 6 Wprowadzenie (62) Zgodnie z diagramem przedstawionym na slajdzie, najpierw trzeba zda matur i wtedy zdobywa si status maturzysty (w odniesieniu do wiata rzeczywistego jest to uproszczenie, ale modele maj to do siebie, e zawsze w jaki sposób upraszczaj rzeczywisto). Po złoeniu podania na studia stajemy si kandydatami. Wskutek akcji, czy zdarze nie pokazanych na diagramie Kandydat uzyskuje status Zakwalifikowanego (mona si domyla, e trzeba tutaj pozytywnie przej przez procedur kwalifikacyjn) lub te staje si Nieprzyjty. Po złoeniu podania Zakwalifikowany staje si Przyjtym, a po złoeniu lubowania uzyskuje on upragniony status Studenta. 62

63 Diagram przypadków uycia $ 6 ; $ 4 1 Wprowadzenie (63) Przejdmy teraz do diagramów przypadków uycia. S one wykorzystywane do pokazania kto co moe zrobi. 63

64 Diagram przypadków uycia. Wprowadzenie (64) Jednym z głównych elementów wystpujcych na diagramach przypadków uycia s tzw. aktorzy. Na slajdzie pokazano symbol, jakim si oznacza aktorów w jzyku UML. Aktor jest to rola, jak człowiek lub ewentualnie urzdzenie moe odgrywa w kontakcie z opisywanym systemem informatycznym. 64

65 Diagram przypadków uycia $ 4 1 Wprowadzenie (65) Na slajdzie widzimy trzech aktorów: Maturzyst, Zakwalifikowanego i Nieprzyjtego. 65

66 Diagram przypadków uycia. Wprowadzenie (66) Aktor moe mie do czynienia z przypadkiem uycia opisujcym pewien cel (np. o charakterze biznesowym), który aktor chce osign w kontakcie z systemem informatycznym. Nazwy przypadków uycia zapisuje si w elipsach tak, jak pokazano to na slajdzie. 66

67 Diagram przypadków uycia $ 6 ; $ 4 1 Wprowadzenie (67) Zgodnie z przedstawionym diagramem, Maturzysta moe złoy podanie, natomiast zarówno Zakwalifikowany, jak i Nieprzyjty mog obejrze wyniki rekrutacji. 67

68 Diagram sekwencji # F 1 = 9 J Wprowadzenie (68) Trzecim rodzajem diagramów jzyka UML, jaki chciałbym przedstawi s diagramy sekwencji. Diagramy te słu do ilustrowania komunikacji midzy obiektami. 68

69 6 2) 6 2E Diagram sekwencji 6 6 Wprowadzenie (69) Kady obiekt jest reprezentowany przez prostokt zawierajcy jego nazw i tzw. lini ycia obiektu. 69

70 Diagram sekwencji 6 2) # 6 2E Wprowadzenie (70) Komunikaty przesyłane midzy obiektami s reprezentowane za pomoc strzałki, nad któr pisze si nazw komunikatu. Strzałka pokazuje kierunek przepływu komunikatu. Na pokazanym slajdzie komunikat jest wysyłany przez Obiekt-1 i trafia do Obiekt-2. 70

71 Diagram sekwencji 6 2) # 2) # 2E # 2D 6 2E Wprowadzenie (71) Diagramy sekwencji zazwyczaj zawieraj wicej ni jeden komunikat. Komunikaty s wysyłane w kolejnoci od góry do dołu. Na slajdzie wida trzy komunikaty. Najpierw bdzie wysłany Komunikat-1, potem Komunikat-2 i na kocu Komunikat-3. Tak si złoyło, e wszystkie te komunikaty s wysyłane przez Obiekt-1 i trafiaj do Obiekt-2. 71

72 Diagram sekwencji # F 1 = 9 J Wprowadzenie (72) Diagram pokazany na tym slajdzie opisuje komunikacj midzy trzema obiektami: Maturzyst, Systemem rekrutacji na studia i obiektem o nazwie KReM (chodzi tutaj o Krajowy Rejestr Matur system informatyczny udostpniajcy wyniki matur z Okrgowych Komisji Egzaminacyjnych). Zgodnie z tym diagramem maturzysta chccy dosta si na studia najpierw składa podanie i wprowadza swoje oceny. Nastpnie system rekrutacji wysyła do KReM-u zapytanie, czy wprowadzone oceny s poprawne. KReM przesyła komunikat, z którego wynika, e oceny s poprawne. Wtedy system rekrutacji wysyła do maturzysty komunikat z potwierdzeniem przyjcia podania i ocen. Teraz maturzysta wnosi opłat rekrutacyjn, a system rekrutacji potwierdza przyjcie tej opłaty. Zalet diagramów sekwencji jest pokazanie jakby z globalnego punktu widzenia (czyli patrzc na wszystkie interesujce nas obiekty), jak wyglda komunikacja midzy obiektami. Pomaga to zrozumie działanie opisywanego systemu i jest to informacja, której nie dostarczaj inne rodzaje diagramów jzyka UML. 72

73 Inynieria oprogramowani a Inynieria oprogramowani a Diagram sekwencji Diagramy jzyka UML # F = 9 J Diagram 1 stanów I$ Inynieria oprogramowani a Diagram przypadków uycia I$ Wprowadzeni e (72) $ 1 $ 4 I$ % ' 1 I$ ' 6 6 ; Wprowadzeni e (62) $ 4 1 Wprowadzeni e (67) Wprowadzenie (73) Jak wida, jzyk UML oferuje rónego rodzaju diagramy, z których kady opisuje inne aspekty systemu. Jak ju wczeniej wspomniano, tych rodzajów diagramów jest wicej i bd one omówione w trakcie wykładu powiconego jzykowi UML. 73

74 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (74) Kolejny wykład bdzie dotyczył metod formalnych. 74

75 Metody formalne 8 # % 8 $ (4# # ( ( Wprowadzenie (75) Zgodnie z Computing Curricula 2001, metody formalne s jednostk opcjonaln. Maj one cisły zwizek z walidacj oprogramowania. Niektórzy podchodz do nich sceptycznie, inni upatruj w nich nadziej na istotne podniesienie jakoci tworzonego oprogramowania, jakoci rozumianej jako zgodno implementacji ze specyfikacj. 75

76 1 ( Metody formalne = J # ( % # < 1 ( α β α Wprowadzenie (76) Zasadnicza koncepcja zwizana z metodami formalnymi polega na tym, by wykazywa poprawno programów nie w oparciu o testy czy przegldy, lecz na gruncie matematycznym, poprzez dowodzenie właciwoci programów. 76

77 Silnia K L M & N O P N O )N K BO L M O Q )N O R N S N S Wprowadzenie (77) Spróbujmy udowodni, e przedstawiona na slajdzie funkcja zapisana w jzyku C oblicza warto n!. 77

78 Silnia K L M IRRR F T O P RRRI & N O P N O )N K BO L M O Q )N O R N S N IRRR 0 O O B RRRI S Wprowadzenie (78) Pierwszym krokiem jest zwizanie z t funkcj warunku wstpnego (po angielsku precondition) i kocowego (ang. postcondition). Poniewa parametr n został zadeklarowany jako liczba całkowita, to wystarczy doda jako warunek wstpny, e ma by to liczba nieujemna. Std te umiecilimy w tekcie programu komentarz PRE zawierajcy warunek n >= 0. Warunek kocowy (POST) okrela relacj, jaka ma by prawdziwa na kocu wykonania podprogramu. W przypadku omawianego programu na kocu zmienna s powinna mie warto n!. 78

79 Silnia K L M IRRR F T O P RRRI & N O P N O )N K BO L M O Q )N O R N S N IRRR 0 O O B RRRI S Wprowadzenie (79) No to teraz wystarczy tylko dowie, e jeeli na pocztku wykonania podprogramu n >= 0, to na kocu s bdzie równe n!. Łatwo powiedzie, trudno zrobi. W przypadku naszego programu najtrudniejszym elementem jest ptla while. Dowodzenie poprawnoci programu zawierajcych ptle odbywa si metod niezmienników (ang. invariant). Niezmiennik jest to zdanie, które jest prawdziwe za kadym razem, kiedy powtarzane jest wykonanie instrukcji zawartych w ptli. Dokładnie mówic, niezmiennik powinien by prawdziwy tu przed pierwszym wykonaniem instrukcji zawartych w ptli, tu przed drugim wykonaniem, przed trzecim itd. Zasadniczy problem polega na tym by znale (wymyli) taki niezmiennik, który zawsze bdzie prawdziwy i jednoczenie pomoe nam w udowodnieniu warunku kocowego POST. 79

80 Silnia K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (80) Nasz podprogram jest bardzo prosty i nietrudno zauway, e niezmiennik (INV) ma posta nastpujcego zdania: s równa si k!. Najpierw udowodnimy, e to zdanie jest faktycznie niezmiennikiem, a potem pokaemy, jak go wykorzysta do udowodnienia warunku kocowego. 80

81 Silnia K L M IRRR F T O P RRRI ) O P B & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (81) Pierwsze wystpienie inwariantu (tu przed wykonaniem instrukcji while) jest prawdziwe, bowiem na mocy definicji funkcji silnia, 0! jest równe 1. 81

82 Silnia K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (82) Instrukcja k= k+1 jest o tyle kłopotliwa, e wystpuje w niej dwa razy ten sam symbol k i za kadym razem oznacza inn warto. 82

83 Silnia K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (83) eby usun t niejednoznaczno oznaczmy przez k z podkreleniem pocztkow warto k, jaka była przed wykonaniem tej instrukcji przypisania, a k bez podkrelenia niech oznacza now warto, jaka bdzie po wykonaniu tej instrukcji. 83

84 Silnia O O B K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (84) Zatem z pierwszego inwariantu wynika, e przed wykonaniem tej instrukcji przypisania mamy s równe k z podkreleniem silnia. 84

85 Silnia O O B K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O O B O O Q ) O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (85) Po wykonaniu omawianej instrukcji przypisania dojdzie nam jeszcze zdanie mówice, e nowa warto k jest równa starej wartoci powikszonej o 1. 85

86 Silnia O O B K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O O B O O Q ) O Q )N O O K V )LB O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (86) Czyli po wykonaniu tej instrukcji przypisania bdziemy mieli s równe (k-1)!. 86

87 Silnia K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O O K V )LB O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (87) W kolejnej instrukcji przypisania mamy podobn niejednoznaczno, jak poprzednio: dwa razy wystpuje symbol s i za kadym razem oznacza inn warto. 87

88 Silnia K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O O K V )LB O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (88) Podobnie jak poprzednio przyjmiemy, e s z podkreleniem oznacza star warto, a s bez podkrelenia now warto zmiennej s. 88

89 Silnia O O K V )LB K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O O K V )LB O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (89) Zatem na mocy poprzednio dowiedzionego faktu mona powiedzie, e tu przed wykonaniem tej instrukcji przypisania stara warto s jest równa (k-1)!. 89

90 Silnia O O K V )LB K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O O K V )LB O O R O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (90) Po wykonaniu tej instrukcji bdzie mona dopisa do poprzedniego zdania jeszcze jedno: nowa warto s jest równa starej pomnoonej przez k. 90

91 Silnia O O K V )LB K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O O K V )LB O O R O Q )N O O K V )LB R O O B O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (91) Jeeli zastpimy star warto s przez (k 1)!, to okae si, e nowa warto s jest równa k!. 91

92 Silnia K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (92) I w ten sposób dowiedlimy, e jeeli na pocztku wykonania instrukcji while prawd jest, e s jest równe k!, to po wykonaniu obu instrukcji przypisania nadal s bdzie równe k!. Zatem faktycznie jest to niezmiennik tej ptli. 92

93 Silnia O O K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (93) Aby dowie prawdziwo warunku kocowego (POST) wystarczy zauway, e zaraz po wykonaniu instrukcji while prawdziwy jest inwariant s jest równe k! oraz prawdziwe jest zaprzeczenie warunku wystpujcego w instrukcji while, czyli k jest równe n. 93

94 Silnia O O K L M IRRR F T O P RRRI & N O P N O )N IRRR 7 U O O B RRRI K BO L M O Q )N O R N IRRR 7 U O O B RRRI S N IRRR 0 O O B RRRI S Wprowadzenie (94) Podstawiajc niezmiennik n w miejsce k dostajemy warunek kocowy i w ten sposób koczy si dowód poprawnoci tego podprogramu. 94

95 Dowodzenie poprawnoci programów G P P P = 4 - P P P = % # 8 4% % F 4 Wprowadzenie (95) Do lat 90-tych dowodzenie poprawnoci programów odbywało si jedynie dla bardzo krótkich programów. W cigu ostatniej dekady nastpił istotny postp i powstały bardzo efektywne weryfikatory. Jednake dowodzenie poprawnoci programu jest wci bardzo pracochłonne. Ciekawe dane pozyskano w ramach projektu VSE (Verification Support Environment) finansowanego przez Uni Europejsk. Jak pisze prof. Wolfgang Reif, dowiedzenie poprawnoci programu zawierajcego ok. 7 tys. wierszy wymagało pracochłonnoci około 2 osobolat, a sama specyfikacja formalna miała ok. 5 tys. wierszy tekstu. Jak wic wida, formalna specyfikacja programów moe by bardzo obszerna i jej wytworzenie oraz sprawdzenie jej poprawnoci jest zadaniem samym w sobie. 95

96 Wykład nt. metod formalnych $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # 4 # 7# # % Wprowadzenie (96) W trakcie wykładu dotyczcego metod formalnych omówi tzw. specyfikacje aksjomatyczne i zwizane z nimi implementacje niestandardowe, majce charakter anomalii. Przedstawi te sieci Petriego jako chyba najbardziej popularne narzdzie modelowania oprogramowania. Jest to notacja matematyczna o charakterze graficznym wykorzystywana do modelowania nie tylko systemów informatycznych, ale take np. systemów transportowych. 96

97 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (97) Kolejny wykład bdzie powicony wzorcom projektowym. 97

98 Wzorce projektowe 8 # % 8 $ (4# # ( ( Wprowadzenie (98) Wzorce projektowe s podstaw współczesnego projektowania oprogramowania. 98

99 Wzorce projektowe =. W Wzorzec = Sprawdzona koncepcja, która: opisuje problem powtarzajcy si wielokrotnie w okrelonym kontekcie, działajce na niego siły, oraz podaje istot jego rozwizania w sposób abstrakcyjny. Wprowadzenie (99) Informatyka zawdzicza koncepcj wzorców profesorowi Christopherowi Alexandrowi. Zgodnie z jego koncepcj wzorzec jest to sprawdzona koncepcja, która opisuje problem powtarzajcy si wielokrotnie w okrelonym kontekcie, działajce na niego siły oraz podaje istot rozwizania tego problemu w sposób abstrakcyjny. 99

100 Wykład nt. wzorców projektowych $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # 5 = % ; 8 6 Wprowadzenie (100) W ramach wykładu powiemy o Bandzie Czterech, czyli tych, którzy wprowadzili wzorce do inynierii oprogramowania, omówiony zostanie katalog wzorców projektowych i przedstawione zostan wybrane wzorce projektowe oraz ich zastosowania. 100

101 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (101) W cyklu wykładowym powiconym inynierii oprogramowania nie moe zabrakn wykładu dotyczcego zarzdzania konfiguracj. 101

102 Zarzdzanie konfiguracj 8 # % 8 $ (4# # ( ( Wprowadzenie (102) Zmiany w oprogramowaniu i towarzyszca im ewolucja kodu s praktycznie nie do uniknicia. Właciwe zarzdzanie konfiguracj jest podstaw skutecznej ewolucji oprogramowania i jedn z kluczowych praktyk zarzdzania przedsiwziciem informatycznym. 102

103 Najprostszy system zarzdzania zmianami $ # : # # % ( ( ( ( ( % # ' Wprowadzenie (103) Jeeli przedsiwzicie jest małe w sensie rozmiaru kodu oprogramowania, pracochłonnoci jego wytworzenia i liczby zaangaowanych osób, to zarzdzanie zmian moe by bardzo proste. Wystarczy, e proponowana przez klienta zmiana spotka si z akceptacj programistów (moe te by odwrotnie: stron proponujc zmian mog by programici, a akceptujc klient). 103

104 Formalne podejcie do zarzdzania zmianami Err X 9 # < 4% ( X 9 # % # F C X 9 # # $ 9 4% 9 Wprowadzenie (104) Niestety, jest szereg przedsiwzi programistycznych, które wymagaj bardziej formalnego podejcia do zarzdzania zmianami. Due firmy, prowadzce tak due przedsiwzicia, jak budowa elektronicznej centrali telefonicznej, korzystaj do czsto z podejcia prezentowanego na slajdzie, gdzie danie zmiany przechodzi do długi proces od uytkownika zgłaszajcego danie zmiany (np. usterk w oprogramowaniu), poprzez kierownika konfiguracji, programist oceniajcego - na polecenie kierownika konfiguracji - ryzyko i koszty wprowadzenia proponowanej zmiany, specjalny Komitet Zarzdzania Konfiguracj, który podejmuje ostateczn decyzj w sprawie proponowanej zmiany i Kierownika projektu, który przydziela jednemu z programistów zadanie wprowadzenia zaproponowanej zmiany do oprogramowania. 104

105 Koncepcja systemu zarzdzania konfiguracj % # Wprowadzenie (105) Załómy teraz, e trzech programistów dostało trzy róne zadania modyfikacji tego samego programu. Poniewa (jak to czsto bywa) klientowi bardzo si spieszy, programici ci maj pracowa równolegle. Oczywicie, jeeli zaczn oni bezporednio i do chaotycznie manipulowa kodem programu, to nic dobrego z tego nie wyniknie. 105

106 Koncepcja systemu zarzdzania konfiguracj % # Wprowadzenie (106) Aby temu zaradzi korzysta si z systemów zarzdzania konfiguracj, które chroni oprogramowanie przed chaotycznymi modyfikacjami i umoliwiaj współbiene modyfikowanie rónych składników oprogramowania w sposób kontrolowany. 106

107 Wykład nt. zarzdzania konfiguracj $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # # = U ; 8 9 4% 9 Wprowadzenie (107) W trakcie wykładu omówiony zostanie jeden z najbardziej popularnych systemów zarzdzania konfiguracj zwany CVS. Przedstawiona take zostanie struktura plików projektu oraz wzorce zarzdzania konfiguracj. 107

108 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (108) Kolejne dwa wykłady bd powicone testowaniu oprogramowania. 108

109 Testowanie oprogramowania 8 # % 8 $ (4# # ( ( Wprowadzenie (109) Testowanie ma cisły zwizek z weryfikacj, a take z walidacj oprogramowania i dostarcza danych, które mog by wykorzystane do okrelenia niezawodnoci oprogramowania. 109

110 Czym jest testowanie?, $ $ " $ # -, -,.- - / 6 1 ; F 6 5 Wprowadzenie (110) W literaturze mona znale wiele definicji testowania. Zgodnie z okreleniem zawartym w jednej z ksiek Roberta Bindera, testowanie oprogramowania jest to wykonanie kodu dla kombinacji danych wejciowych i wewntrznych stanów systemu w celu wykrycia błdów. Warto zwróci uwag, na ostatni cz zdania w celu wykrycia błdów. Wynika z tego jasno, e celem testowania nie jest pokazanie, e w oprogramowaniu nie ma błdów wrcz przeciwnie; w testowaniu chodzi o to by wykry jak najwicej błdów. Im wicej błdów si wykryje tym sprawniejszy jest proces testowania, ale te tym gorzej to wiadczy o procesie tworzenia kodu. 110

111 Wykłady nt. testowania $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # 8. # ; Wprowadzenie (111) Bd dwa wykłady na temat testowania. Pierwszy z nich bdzie wprowadzeniem w problematyk testowania, natomiast w ramach drugiego wykładu przedyskutowane zostanie bardzo wane z praktycznego punktu widzenia zagadnienie automatyzacji wykonywania testów. 111

112 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (112) Przedostatni wykład bdzie powicony bardzo głonej ostatnio metodyce programowania zwanej Programowaniem Ekstremalnym (po angielsku Extreme Programming). 112

113 Programowanie Ekstremalne 8 # % 8 $ (4# # ( ( Wprowadzenie (113) Programowanie Ekstremalne jest to zestaw praktyk dotyczcych m.in. specyfikacji wymaga, weryfikacji i walidacji, ewolucji kodu, rónych procesów zwizanych z rozwojem oprogramowania a take z zarzdzaniem przedsiwziciem programistycznym. 113

114 Kryzys oprogramowania # ; 6 % ' / Wprowadzenie (114) Kryzys oprogramowania po raz pierwszy pojawił si w latach 60-tych ubiegłego wieku. Zaobserwowano wówczas główne zagroenia czyhajce na miałków chccych w sposób komercyjny zajmowa si wytwarzaniem oprogramowania. Okazało si, e w bardzo wielu przedsiwziciach programistycznych dochodzi do przekroczenia terminu i budetu, programici s rónymi metodami zachcani do pracy w nadgodzinach, co ujemnie si odbija na ich yciu prywatnym, a na dodatek jako powstajcego oprogramowania jest kiepska i nie satysfakcjonuje uytkowników kocowych. 114

115 Reakcja na kryzys oprogramowania Wprowadzenie (115) Pierwsz reakcj na kryzys oprogramowania było wprowadzenie dyscypliny do przedsiwzi informatycznych. Wierzono, e poprzez wprowadzenie formalnych procesów i ustandaryzowanej dokumentacji uda si zwalczy kryzys oprogramowania. W rezultacie powstały metodyki przypominajce wspaniałe katedry gotyckie: budziły szacunek i podziw dla kunsztu ich twórców, jednak na co dzie mało kto z nich korzystał. Głównym winowajc były zmiany. W niektórych przedsiwziciach zmiany s tak czste, e klasyczne metodyki okazuj si zbyt cikie, by mona było za tymi zmianami nady. W miar upływu lat zaczto zdawa sobie spraw, e potrzeba czego lejszego. 115

116 Lekkie metodyki tworzenia oprogramowania Wprowadzenie (116) W połowie lat 90-tych zaczły si pojawia tzw. lekkie metodyki oprogramowania, które były bardziej zorientowane na nadanie za zmianami ni kurczowe trzymanie si planu. Jedn z nich jest Programowanie Ekstremalne. 116

117 Główne zalety Programowania Ekstremalnego B # ( 4 Q X % B Wprowadzenie (117) W Programowaniu Ekstremalnym najwaniejsza jest komunikacja ustna. Jedyne artefakty, jakie musz powstawa zostały ograniczone do kodu programu i testów. Ponadto Programowanie Ekstremalne pociga obietnic braku nadgodzin. Nic dziwnego, e wielu ludziom taka propozycja wydaje si bardzo atrakcyjna. Jednak bardzo wiele osób zapomina, e Programowanie Ekstremalne ma równie szereg konkretnych wymaga majcych posta praktyk, które musz by stosowane, aby przedsiwzicie zakoczyło si sukcesem. O tych praktykach bdzie mowa w trakcie wykładu powiconego Programowaniu Ekstremalnemu. 117

118 Plan wykładu $ % 4 # % : ' 4; 1 < 4# 8 $ 9 4% 9 0 % # % # # % # Wprowadzenie (118) Ostatni wykład bdzie powicony ewolucji oprogramowania. 118

119 Ewolucja oprogramowania )(3 % # E( # D(F ; 9 # W H ( 1 % G ( 1 % % # + (F 4 % # Wprowadzenie (119) W trakcie wykładu zostan omówione przyczyny ewolucji oprogramowania, prawa Lehmana, rozwój jdra systemu Linux, który jest zaprzeczeniem praw Lehmana, czynniki wpływajce na koszt pielgnacji oprogramowania, typowy proces pielgnacji oprogramowania i refaktoryzacja, jako technika obnienia kosztów pielgnacji. 119

120 Plan wykładu # Wprowadzenie (120) Czas na podsumowanie wykładu. 120

121 Inynieria oprogramowania 8 # % 8 $ (4# # ( ( Wprowadzenie (121) W trakcie tego wykładu spojrzelimy z lotu ptaka na rozpoczynajcy si cykl wykładów na temat inynierii oprogramowania. Z przedstawionej prezentacji wynika, e bd omówione wszystkie obowizkowe jednostki wiedzy oprócz programowania za pomoc API, a ponadto bdzie take jeden wykład powicony metodom formalnym. Dyskusja zagadnie dotyczcych inynierii oprogramowania, któr włanie zaczlimy, bdzie kontynuowana w ramach przedmiotu obieralnego pt. Zaawansowana inynieria oprogramowania. 121

122 Wprowadzenie (122) Dzikuj za uwag. Mam nadziej, e mimo wysokiego poziomu abstrakcji i pobienoci prezentacji par istotnych szczegółów dotyczcych inynierii oprogramowania udało si Pastwu dostrzec i ten ogólny obraz pomoe lepiej sobie przyswoi zagadnienia, o których bdzie mowa na kolejnych wykładach. Serdecznie na nie zapraszam. 122

Wprowadzenie do kompilatorów

Wprowadzenie do kompilatorów Wprowadzenie do kompilatorów Czy ja kiedykolwiek napisz jaki kompilator? Jakie zadania ma do wykonania kompilator? Czy jzyk formalny to rodzaj jzyka programowania? Co to jest UML?, Czy ja kiedykolwiek

Bardziej szczegółowo

Programowanie Obiektowe

Programowanie Obiektowe Programowanie Obiektowe dr in. Piotr Zabawa IBM/Rational Certified Consultant pzabawa@pk.edu.pl WYKŁAD 1 Wstp, jzyki, obiektowo Cele wykładu Zaznajomienie słuchaczy z głównymi cechami obiektowoci Przedstawienie

Bardziej szczegółowo

Kompilacja image z CVS

Kompilacja image z CVS Kompilacja image z CVS Tworzenie image na Dreamboxa nie jest tajemnic, a opis czynnoci, jakie naley wykona, aby stworzy własny soft mona znale na wikszoci niemieckich stron traktujcych o Dreamboxach. Kto

Bardziej szczegółowo

WYKŁAD 12. Wzorce projektowe czynnociowe State Mediator

WYKŁAD 12. Wzorce projektowe czynnociowe State Mediator WYKŁAD 12 Wzorce projektowe czynnociowe State Mediator Behavioral Design Pattern: State [obj] Umoliwia obiektowi zmian zachowania gdy zmienia si jego stan wewntrzny. Dzieki temu obiekt zdaje si zmienia

Bardziej szczegółowo

Planowanie adresacji IP dla przedsibiorstwa.

Planowanie adresacji IP dla przedsibiorstwa. Planowanie adresacji IP dla przedsibiorstwa. Wstp Przy podejciu do planowania adresacji IP moemy spotka si z 2 głównymi przypadkami: planowanie za pomoc adresów sieci prywatnej przypadek, w którym jeeli

Bardziej szczegółowo

Temat: Programowanie zdarzeniowe. Zdarzenia: delegacje, wykorzystywanie zdarze. Elementy Windows Application (WPF Windows Presentation Foundation).

Temat: Programowanie zdarzeniowe. Zdarzenia: delegacje, wykorzystywanie zdarze. Elementy Windows Application (WPF Windows Presentation Foundation). Temat: Programowanie zdarzeniowe. Zdarzenia: delegacje, wykorzystywanie zdarze. Elementy Windows Application (WPF Windows Presentation Foundation). 1. Programowanie zdarzeniowe Programowanie zdarzeniowe

Bardziej szczegółowo

Model dojrzałoci CMMI

Model dojrzałoci CMMI Model dojrzałoci CMMI Witam na trzecim wykładzie dotyczcym zaawansowanej inynierii oprogramowania. Dzisiaj bdzie mowa o modelu dojrzałoci CMMI. 1 Plan wykładów! " # $ % & ' ( )! " # $ % & ' ( ) " * + "

Bardziej szczegółowo

Wstp. Odniesienie do podstawy programowej

Wstp. Odniesienie do podstawy programowej ! " 1 Wstp Praca dotyczy projektu midzyprzedmiotowego, jaki moe by zastosowany na etapie nauczania gimnazjum specjalnego. Powyszy projekt moe zosta przeprowadzony na zajciach z przedmiotów: informatyka

Bardziej szczegółowo

Podstawy programowania III WYKŁAD 4

Podstawy programowania III WYKŁAD 4 Podstawy programowania III WYKŁAD 4 Jan Kazimirski 1 Podstawy UML-a 2 UML UML Unified Modeling Language formalny język modelowania systemu informatycznego. Aktualna wersja 2.3 Stosuje paradygmat obiektowy.

Bardziej szczegółowo

Wykład 1 Inżynieria Oprogramowania

Wykład 1 Inżynieria Oprogramowania Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI

Bardziej szczegółowo

Jerzy Nawrocki, Wprowadzenie do informatyki

Jerzy Nawrocki, Wprowadzenie do informatyki Jerzy Nawrocki, Jerzy Nawrocki Wydział Informatyki Politechnika Poznańska jerzy.nawrocki@put.poznan.pl Kryzys oprogramowania Struktury danych i inżynieria oprogramowania Przekraczanie terminów Przekraczanie

Bardziej szczegółowo

Egzamin / zaliczenie na ocenę*

Egzamin / zaliczenie na ocenę* WYDZIAŁ PODSTAWOWYCH PROBLEMÓW TECHNIKI Zał. nr 4 do ZW33/01 KARTA PRZEDMIOTU Nazwa w języku polskim : INŻYNIERIA OPROGRAMOWANIA Nazwa w języku angielskim: SOFTWARE ENGINEERING Kierunek studiów (jeśli

Bardziej szczegółowo

Zarzdzanie i Inynieria produkcji Studia 2 stopnia o profilu: A P. Przedmiot: Systemy transportowe

Zarzdzanie i Inynieria produkcji Studia 2 stopnia o profilu: A P. Przedmiot: Systemy transportowe Systemy transportowe WM Zarzdzanie i Inynieria produkcji Studia stopnia o profilu: A P Przedmiot: Systemy transportowe Kod przedmiotu Status przedmiotu: obieralny ZIP N 3-_0 Jzyk wykładowy: polski Rok:

Bardziej szczegółowo

Gramatyki regularne i automaty skoczone

Gramatyki regularne i automaty skoczone Gramatyki regularne i automaty skoczone Alfabet, jzyk, gramatyka - podstawowe pojcia Co to jest gramatyka regularna, co to jest automat skoczony? Gramatyka regularna Gramatyka bezkontekstowa Translacja

Bardziej szczegółowo

Podstawy modelowania programów Kod przedmiotu

Podstawy modelowania programów Kod przedmiotu Podstawy modelowania programów - opis przedmiotu Informacje ogólne Nazwa przedmiotu Podstawy modelowania programów Kod przedmiotu 11.3-WI-INFP-PMP Wydział Kierunek Wydział Informatyki, Elektrotechniki

Bardziej szczegółowo

Bazy danych. Plan wykładu. Podzapytania - wskazówki. Podzapytania po FROM. Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych.

Bazy danych. Plan wykładu. Podzapytania - wskazówki. Podzapytania po FROM. Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych. Plan wykładu azy danych Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych. Dokoczenie SQL Zalenoci wielowartociowe zwarta posta normalna Dekompozycja do 4NF Przykład sprowadzanie do

Bardziej szczegółowo

obsług dowolnego typu formularzy (np. formularzy ankietowych), pobieranie wzorców formularzy z serwera centralnego,

obsług dowolnego typu formularzy (np. formularzy ankietowych), pobieranie wzorców formularzy z serwera centralnego, Wstp GeForms to program przeznaczony na telefony komórkowe (tzw. midlet) z obsług Javy (J2ME) umoliwiajcy wprowadzanie danych według rónorodnych wzorców. Wzory formularzy s pobierane z serwera centralnego

Bardziej szczegółowo

Zarzdzenie nr 35/2012 Rektora Wyszej Szkoły Zarzdzania i Administracji z siedzib w Zamociu z dnia 5 listopada 2012 roku

Zarzdzenie nr 35/2012 Rektora Wyszej Szkoły Zarzdzania i Administracji z siedzib w Zamociu z dnia 5 listopada 2012 roku Zarzdzenie nr 35/2012 Rektora Wyszej Szkoły Zarzdzania i Administracji z siedzib w Zamociu z dnia 5 listopada 2012 roku w sprawie wprowadzenia wzorów dokumentów dotyczcych okresowej oceny nauczycieli akademickich

Bardziej szczegółowo

Projektowanie i analiza zadaniowa interfejsu na przykładzie okna dialogowego.

Projektowanie i analiza zadaniowa interfejsu na przykładzie okna dialogowego. Projektowanie i analiza zadaniowa interfejsu na przykładzie okna dialogowego. Jerzy Grobelny Politechnika Wrocławska Projektowanie zadaniowe jest jednym z podstawowych podej do racjonalnego kształtowania

Bardziej szczegółowo

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1 Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1 Zofia Kruczkiewicz 1 Zunifikowany iteracyjno- przyrostowy proces tworzenia oprogramowania kiedy? Przepływ działań Modelowanie przedsiębiorstwa

Bardziej szczegółowo

Extreme Programming Modified 1

Extreme Programming Modified 1 Inynieria oprogramowania Wykład 1 Prowadzcy Wprowadzenie do inynierii oprogramowania Bartosz Walter dr in. Bartosz Walter Instytut Informatyki PP Pokój: Centrum Polsko-Niemieckie

Bardziej szczegółowo

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017 Wykład 12 7 czerwca 2017 Czym jest UML? UML składa się z dwóch podstawowych elementów: notacja: elementy graficzne, składnia języka modelowania, metamodel: definicje pojęć języka i powiazania pomiędzy

Bardziej szczegółowo

Temat: Technika zachłanna. Przykłady zastosowania. Własno wyboru zachłannego i optymalnej podstruktury.

Temat: Technika zachłanna. Przykłady zastosowania. Własno wyboru zachłannego i optymalnej podstruktury. Temat: Technika zachłanna. Przykłady zastosowania. Własno wyboru zachłannego i optymalnej podstruktury. Algorytm zachłanny ( ang. greedy algorithm) wykonuje zawsze działanie, które wydaje si w danej chwili

Bardziej szczegółowo

Bazy danych. Plan wykładu. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania A B

Bazy danych. Plan wykładu. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania A B Plan wykładu Bazy danych Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania Definicja zalenoci funkcyjnych Klucze relacji Reguły dotyczce zalenoci funkcyjnych Domknicie zbioru atrybutów

Bardziej szczegółowo

12) Wadą modelu kaskadowego jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 13) Wadą modelu opartego na prototypowaniu jest:

12) Wadą modelu kaskadowego jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 13) Wadą modelu opartego na prototypowaniu jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 1) Oprogramowanie to: 2) Produkty oprogramowania w inżynierii oprogramowania można podzielić na: 3) W procesie wytwarzania oprogramowania

Bardziej szczegółowo

Optymalizacja oprogramowania - wprowadzenie

Optymalizacja oprogramowania - wprowadzenie Optymalizacja oprogramowania - wprowadzenie Poznaskie Centrum Superkomputerowo Sieciowe Projekt jest współfinansowany ze rodków Europejskiego Funduszu Rozwoju Regionalnego w ramach Programu Operacyjnego

Bardziej szczegółowo

Amortyzacja rodków trwałych

Amortyzacja rodków trwałych Amortyzacja rodków trwałych Wydawnictwo Podatkowe GOFIN http://www.gofin.pl/podp.php/190/665/ Dodatek do Zeszytów Metodycznych Rachunkowoci z dnia 2003-07-20 Nr 7 Nr kolejny 110 Warto pocztkow rodków trwałych

Bardziej szczegółowo

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A x P. Wykład 15 wiczenia Laboratorium Projekt 15

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A x P. Wykład 15 wiczenia Laboratorium Projekt 15 Zintegrowane systemy zarzdzania WM Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A x P Przedmiot: Zintegrowane systemy zarzdzania Status przedmiotu: obowizkowy Kod przedmiotu ZIP S 0 03-0_0

Bardziej szczegółowo

Bazy danych Podstawy teoretyczne

Bazy danych Podstawy teoretyczne Pojcia podstawowe Baza Danych jest to zbiór danych o okrelonej strukturze zapisany w nieulotnej pamici, mogcy zaspokoi potrzeby wielu u!ytkowników korzystajcych z niego w sposóbs selektywny w dogodnym

Bardziej szczegółowo

Studium przypadku Case Study CCNA2-ROUTING

Studium przypadku Case Study CCNA2-ROUTING Na podstawie oryginału CISCO, przygotował: mgr in. Jarosław Szybiski Studium przypadku Case Study CCNA2-ROUTING Ogólne załoenia dla projektu Przegld i cele Podczas tego wiczenia uczestnicy wykonaj zadanie

Bardziej szczegółowo

Karta (sylabus) przedmiotu. Zarzdzanie i Inynieria Produkcji Studia pierwszego stopnia o profilu: A P

Karta (sylabus) przedmiotu. Zarzdzanie i Inynieria Produkcji Studia pierwszego stopnia o profilu: A P Jzyk obcy IV Karta (sylabus) przedmiotu WM Zarzdzanie i Inynieria Produkcji Studia pierwszego stopnia o profilu: A P Przedmiot: Jzyk angielski ZIP 1 S 1 5 51-0_0 Status przedmiotu: obieralny Jzyk wykładowy:

Bardziej szczegółowo

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A x P

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A x P Specjalno: Inynieria produkcji w przemyle maszynowym Zintegrowane systemy (CIM) WM Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A x P Przedmiot: Zintegrowane systemy (CIM) Status przedmiotu:

Bardziej szczegółowo

CYKL ZAJ POZNAJEMY POWER POINT

CYKL ZAJ POZNAJEMY POWER POINT CYKL ZAJ POZNAJEMY POWER POINT TEMAT: Pracujemy w programie Power Point. Czas (4 x 45 minut ) ZAKRES TRECI PROGRAMOWYCH: Bezpieczestwo, higiena i reguły pracy przy komputerze Sposoby porozumiewania si

Bardziej szczegółowo

* ) # # $ % & '% ())*+, "!-. / ))*0)12 % % '11 + / ))10)32, % ' *)) +

* ) # # $ % & '% ())*+, !-. / ))*0)12 % % '11 + / ))10)32, % ' *)) + ! " #$%## &$$' ()! " * ) # # $ % & '% ())*+, "!-. / ))*0)12 % % '11 + / ))10)32, % ' *)) + ())12 %% & + ) 4 2 55 5 6 57( 8 2 % + 4, % 97, +,- % :! " ; (5-5

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Podniesienie poziomu wiedzy studentów z inżynierii oprogramowania w zakresie C.

Bardziej szczegółowo

Zarzdzanie i Inynieria produkcji Studia 2 stopnia o profilu: A P

Zarzdzanie i Inynieria produkcji Studia 2 stopnia o profilu: A P Systemy transportowe WM Zarzdzanie i Inynieria produkcji Studia stopnia o profilu: A P Przedmiot: Systemy transportowe Kod przedmiotu Status przedmiotu: obieralny ZIP S 3 3-_0 Jzyk wykładowy: polski Rok:

Bardziej szczegółowo

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A P

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A P Zarzdzanie łacuchem dostaw WZ Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A P Przedmiot: Zarzdzanie łacuchem dostaw Kod przedmiotu ZIP 2 N 2 36-4_0 Status przedmiotu: Przedmiot obieralny

Bardziej szczegółowo

WYKŁAD 10. Wzorce projektowe czynnociowe Command Strategy

WYKŁAD 10. Wzorce projektowe czynnociowe Command Strategy WYKŁAD 10 Wzorce projektowe czynnociowe Command Strategy Behavioral Design Pattern: Command [obj] Kapsułkuje dania w postaci obiektu, co umoliwia parametryzowanie klientów rónymi daniami, kolejkowanie

Bardziej szczegółowo

Poznanie i przyswojenie przez studentów podstawowych poj z zakresu organizacji i zarzdzania C2

Poznanie i przyswojenie przez studentów podstawowych poj z zakresu organizacji i zarzdzania C2 Podstawy zarzdzania WZ Zarzdzanie i inynieria produkcji Studia I stopnia o profilu: A P Przedmiot: Podstawy zarzdzania Status : Jzyk wykładowy: Rok: I Nazwa specjalnoci: Rodzaj zaj i liczba godzin: Studia

Bardziej szczegółowo

Projektowanie algorytmów rekurencyjnych

Projektowanie algorytmów rekurencyjnych C9 Projektowanie algorytmów rekurencyjnych wiczenie 1. Przeanalizowa działanie poniszego algorytmu dla parametru wejciowego n = 4 (rysunek 9.1): n i i

Bardziej szczegółowo

Zarzdzanie i inynieria produkcji Studia I stopnia o profilu: A P

Zarzdzanie i inynieria produkcji Studia I stopnia o profilu: A P Podstawy zarzdzania WZ Zarzdzanie i inynieria produkcji Studia I stopnia o profilu: A P Przedmiot: Podstawy zarzdzania Kod ZIP 1 S 01 04-0_0 Status : Przedmiot obowizkowy Jzyk wykładowy: Jzyk polski Rok:

Bardziej szczegółowo

Kontrola jakoci artefaktów

Kontrola jakoci artefaktów Kontrola jakoci artefaktów Witam serdecznie! Na dzisiejszym wykładzie bdzie mowa o kontroli jakoci artefaktów. Wikszo artefaktów, czyli wytworów rk ludzkich, wymaga kontroli jakoci. Na slajdzie mamy pokazan

Bardziej szczegółowo

MODELOWANIE PROCESÓW EKSPLOATACJI MASZYN

MODELOWANIE PROCESÓW EKSPLOATACJI MASZYN Akademia Techniczno Rolnicza w Bydgoszczy Wojskowy Instytut Techniki Pancernej i Samochodowej MODELOWANIE PROCESÓW EKSPLOATACJI MASZYN BYDGOSZCZ SULEJÓWEK, 2002. 2 Akademia Techniczno Rolnicza w Bydgoszczy

Bardziej szczegółowo

Etapy życia oprogramowania

Etapy życia oprogramowania Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 w prezentacji wykorzystano również materiały przygotowane przez Michała Kolano

Bardziej szczegółowo

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej. Efekty dla studiów pierwszego stopnia profil ogólnoakademicki na kierunku Informatyka w języku polskim i w języku angielskim (Computer Science) na Wydziale Matematyki i Nauk Informacyjnych, gdzie: * Odniesienie-

Bardziej szczegółowo

EP io default website

EP io default website 26-01-2015 Od regulacji Internetu po bezpieczestwo publiczne debata na temat dylematów ochrony danych Nowoczesna gospodarka opiera si w duej mierze na przetwarzaniu danych, dlatego potrzebne s jasne reguy,

Bardziej szczegółowo

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013 SYLLABUS na rok akademicki 01/013 Tryb studiów Studia stacjonarne Kierunek studiów Informatyka Poziom studiów Pierwszego stopnia Rok studiów/ semestr III/VI Specjalność Bez specjalności Kod katedry/zakładu

Bardziej szczegółowo

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A P. Semestr: II

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A P. Semestr: II Przedsibiorstwo w e-gospodarce WZ Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A P Przedmiot: Przedsibiorstwo w e-gospodarce Kod przedmiotu ZIP S 0 43-4_0 Status przedmiotu: Przedmiot

Bardziej szczegółowo

PODSTAWY DIAGNOSTYKI MASZYN

PODSTAWY DIAGNOSTYKI MASZYN *************************************************************** Bogdan ÓŁTOWSKI PODSTAWY DIAGNOSTYKI MASZYN ************************************************* BYDGOSZCZ - 1996 motto : na wielkie kłopoty

Bardziej szczegółowo

Spis treci. Dzie 1. I Wprowadzenie (wersja 0911) II Dostp do danych biecych specyfikacja OPC Data Access (wersja 0911)

Spis treci. Dzie 1. I Wprowadzenie (wersja 0911) II Dostp do danych biecych specyfikacja OPC Data Access (wersja 0911) I Wprowadzenie (wersja 0911) Kurs OPC Integracja i Diagnostyka Spis treci Dzie 1 I-3 O czym bdziemy mówi? I-4 Typowe sytuacje I-5 Klasyczne podejcie do komunikacji z urzdzeniami automatyki I-6 Cechy podejcia

Bardziej szczegółowo

WIADECTWO INNOWACYJNOCI PRODUKTU

WIADECTWO INNOWACYJNOCI PRODUKTU WIADECTWO INNOWACYJNOCI PRODUKTU I. ZAKRES wiadectwo innowacyjnoci produktu dla ASTEC Sp. z o.o. dotyczy prototypu produktu MDT (Magik Development Tools) w fazie studium wykonalnoci. ASTEC Sp. z o.o. ul.

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH Modeling and analysis of computer systems Kierunek: Informatyka Forma studiów: Stacjonarne Rodzaj przedmiotu: Poziom kwalifikacji: obowiązkowy

Bardziej szczegółowo

ELEMENT SYSTEMU BIBI.NET. Instrukcja Obsługi

ELEMENT SYSTEMU BIBI.NET. Instrukcja Obsługi ELEMENT SYSTEMU BIBI.NET Instrukcja Obsługi Copyright 2005 by All rights reserved Wszelkie prawa zastrzeone!"# $%%%&%'(%)* +(+%'(%)* Wszystkie nazwy i znaki towarowe uyte w niniejszej publikacji s własnoci

Bardziej szczegółowo

Karta (sylabus) przedmiotu. Zarzdzanie i Inynieria Produkcji Studia pierwszego stopnia o profilu: A P

Karta (sylabus) przedmiotu. Zarzdzanie i Inynieria Produkcji Studia pierwszego stopnia o profilu: A P Jzyk obcy I WM Karta (sylabus) przedmiotu Zarzdzanie i Inynieria Produkcji Studia pierwszego stopnia o profilu: A P Przedmiot: Jzyk angielski ZIP 1 S 0 17-0_0 Status przedmiotu: Jzyk wykładowy: angielski,

Bardziej szczegółowo

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI KARTA PRZEDMIOTU przedmiotu Stopień studiów i forma Rodzaj przedmiotu Grupa kursów Zaawansowane techniki analizy systemowej oparte na modelowaniu warsztaty Studia podyplomowe Obowiązkowy NIE Wykład Ćwiczenia

Bardziej szczegółowo

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania Etapy życia oprogramowania Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 Określenie wymagań Testowanie Pielęgnacja Faza strategiczna

Bardziej szczegółowo

obejmuje usług w zakresie tłumacze (z jzyka polskiego na jzyk obcy, a take z jzyka obcego

obejmuje usług w zakresie tłumacze (z jzyka polskiego na jzyk obcy, a take z jzyka obcego Warszawa: wiadczenie usług w zakresie tłumacze jzykowych ZP_9_2012 Numer ogłoszenia: 43569-2012; data zamieszczenia: 23.02.2012 OGŁOSZENIE O ZAMÓWIENIU - usługi Zamieszczanie ogłoszenia: obowizkowe. Ogłoszenie

Bardziej szczegółowo

Transport wewntrzny w procesach produkcyjnych

Transport wewntrzny w procesach produkcyjnych Transport wewntrzny w procesach produkcyjnych Karta (sylabus) przedmiotu WM Zarzdzanie i Inynieria Produkcji Studia pierwszego stopnia o profilu: A P Przedmiot: Transport wewntrzny w procesach produkcyjnych

Bardziej szczegółowo

Regulamin rekrutacji

Regulamin rekrutacji Regulamin rekrutacji ZASADY I TRYB PRZEPROWADZANIA POSTPOWANIA REKRUTACYJNEGO DO NKJO W TYCHACH 1 Wstp 1. Rekrutacja na pierwszy rok nauki w NKJO odbywa si na podstawie konkursu wiadectw dla kandydatów

Bardziej szczegółowo

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH Kierunek: Informatyka Modeling and analysis of computer systems Forma studiów: Stacjonarne Rodzaj przedmiotu: obowiązkowy w ramach specjalności:

Bardziej szczegółowo

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty przedmiotu Stopień studiów i forma: Rodzaj przedmiotu Kod przedmiotu Grupa kursów Zaawansowane techniki analizy

Bardziej szczegółowo

Klonowanie MAC adresu oraz TTL

Klonowanie MAC adresu oraz TTL 1. Co to jest MAC adres? Klonowanie MAC adresu oraz TTL Adres MAC (Media Access Control) to unikalny adres (numer seryjny) kadego urzdzenia sieciowego (jak np. karta sieciowa). Kady MAC adres ma długo

Bardziej szczegółowo

Plan wykładu. Reguły asocjacyjne. Przykłady asocjacji. Reguły asocjacyjne. Jeli warunki to efekty. warunki efekty

Plan wykładu. Reguły asocjacyjne. Przykłady asocjacji. Reguły asocjacyjne. Jeli warunki to efekty. warunki efekty Plan wykładu Reguły asocjacyjne Marcin S. Szczuka Wykład 6 Terminologia dla reguł asocjacyjnych. Ogólny algorytm znajdowania reguł. Wyszukiwanie czstych zbiorów. Konstruowanie reguł - APRIORI. Reguły asocjacyjne

Bardziej szczegółowo

Transport wewntrzny w przedsibiorstwie

Transport wewntrzny w przedsibiorstwie Transport wewntrzny w przedsibiorstwie Karta (sylabus) przedmiotu WM Zarzdzanie i Inynieria Produkcji Studia pierwszego stopnia o profilu: A P Przedmiot: Transport wewntrzny w przedsibiorstwie Kod przedmiotu

Bardziej szczegółowo

Konspekt lekcji matematyki klasa 4e Liceum Ogólnokształcce

Konspekt lekcji matematyki klasa 4e Liceum Ogólnokształcce mgr Tomasz Grbski Konspekt lekcji matematyki klasa 4e Liceum Ogólnokształcce Temat: Dyskusja nad liczb rozwiza równania liniowego i kwadratowego z wartoci bezwzgldn i parametrem. Czas trwania: 45 minut.

Bardziej szczegółowo

ROZPORZDZENIE MINISTRA EDUKACJI NARODOWEJ 1) z dnia... 2006 r.

ROZPORZDZENIE MINISTRA EDUKACJI NARODOWEJ 1) z dnia... 2006 r. Projekt z dnia 8 listopada 2006 r. ROZPORZDZENIE MINISTRA EDUKACJI NARODOWEJ 1) z dnia... 2006 r. w sprawie warunków i sposobu wykonywania przez przedszkola, szkoły i placówki publiczne zada umoliwiajcych

Bardziej szczegółowo

Sposoby przekazywania parametrów w metodach.

Sposoby przekazywania parametrów w metodach. Temat: Definiowanie i wywoływanie metod. Zmienne lokalne w metodach. Sposoby przekazywania parametrów w metodach. Pojcia klasy i obiektu wprowadzenie. 1. Definiowanie i wywoływanie metod W dotychczas omawianych

Bardziej szczegółowo

Inżynieria oprogramowania II

Inżynieria oprogramowania II Wymagania funkcjonalne, przypadki użycia Inżynieria oprogramowania II Problem i cel Tworzenie projektów bez konkretnego celu nie jest dobre Praktycznie każdy projekt informatyczny powstaje z uwagi na jakiś

Bardziej szczegółowo

STATUT SOŁECTWA SŁOWINO ROZDZIAŁ I. POSTANOWIENIA OGÓLNE

STATUT SOŁECTWA SŁOWINO ROZDZIAŁ I. POSTANOWIENIA OGÓLNE STATUT SOŁECTWA SŁOWINO ROZDZIAŁ I. POSTANOWIENIA OGÓLNE l. 1. Ogół mieszkaców sołectwa stanowi Samorzd Mieszkaców Wsi zwany dalej,,samorzdem Sołeckim 2. Nazwa samorzdu sołeckiego brzmi: SOŁECTWO SŁOWINO.

Bardziej szczegółowo

I Powiatowy Konkurs Matematyka, Fizyka i Informatyka w Technice Etap finałowy 10 kwietnia 2013 grupa elektryczno-elektroniczna

I Powiatowy Konkurs Matematyka, Fizyka i Informatyka w Technice Etap finałowy 10 kwietnia 2013 grupa elektryczno-elektroniczna I Powiatowy Konkurs Matematyka, Fizyka i Informatyka w Technice Etap finałowy 10 kwietnia 2013 grupa elektryczno-elektroniczna (imi i nazwisko uczestnika) (nazwa szkoły) Arkusz zawiera 6 zada. Zadania

Bardziej szczegółowo

Zastosowanie programu Microsoft Excel do analizy wyników nauczania

Zastosowanie programu Microsoft Excel do analizy wyników nauczania Grayna Napieralska Zastosowanie programu Microsoft Excel do analizy wyników nauczania Koniecznym i bardzo wanym elementem pracy dydaktycznej nauczyciela jest badanie wyników nauczania. Prawidłow analiz

Bardziej szczegółowo

1) Grafy eulerowskie własnoci algorytmy. 2) Problem chiskiego listonosza

1) Grafy eulerowskie własnoci algorytmy. 2) Problem chiskiego listonosza 165 1) Grafy eulerowskie własnoci algorytmy 2) Problem chiskiego listonosza 166 Grafy eulerowskie Def. Graf (multigraf, niekoniecznie spójny) jest grafem eulerowskim, jeli zawiera cykl zawierajcy wszystkie

Bardziej szczegółowo

Cykle życia systemu informatycznego

Cykle życia systemu informatycznego Cykle życia systemu informatycznego Cykl życia systemu informatycznego - obejmuję on okres od zgłoszenia przez użytkownika potrzeby istnienia systemu aż do wycofania go z eksploatacji. Składa się z etapów

Bardziej szczegółowo

Program Certyfikacji Oprogramowania Autodesk. Załoenia

Program Certyfikacji Oprogramowania Autodesk. Załoenia Program Certyfikacji Oprogramowania Autodesk Załoenia Firma Autodesk - wiodcy producent oprogramowania wspomagajcego projektowanie proponuje program umoliwiajcy uytkownikom weryfikacj posiadanego oprogramowania

Bardziej szczegółowo

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A P

Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A P Zarzdzanie projektem i innowacjami WM Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A P Kod przedmiotu Przedmiot: Zarzdzanie projektem i innowacjami ZIP 2 N 0 05-0_0 Status przedmiotu:

Bardziej szczegółowo

Inżynieria Oprogramowania. Robert Szmurło

Inżynieria Oprogramowania. Robert Szmurło Robert Szmurło 1 Złożoność inżynierii oprogramowania Programowanie komputerowy jest zdecydowanie najbardziej skomplikowanym zadaniem intelektualnym podejmowanym przez człowieka. Kiedykolwiek. Gerald M.

Bardziej szczegółowo

w sprawie wprowadzenia procedury naboru pracowników na kierownicze stanowiska urzdnicze i stanowiska urzdnicze w Starostwie Powiatowym w Krasnymstawie

w sprawie wprowadzenia procedury naboru pracowników na kierownicze stanowiska urzdnicze i stanowiska urzdnicze w Starostwie Powiatowym w Krasnymstawie ZARZDZENIE Nr 13/2005 STAROSTY KRASNOSTAWSKIEGO z dnia 29 sierpnia 2005 roku w sprawie wprowadzenia procedury naboru pracowników na kierownicze stanowiska urzdnicze i stanowiska urzdnicze w Starostwie

Bardziej szczegółowo

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language) Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu

Bardziej szczegółowo

Zarzdzanie i Inynieria Produkcji Studia II stopnia o profilu: A P

Zarzdzanie i Inynieria Produkcji Studia II stopnia o profilu: A P Technologiczne i organizacyjne przygotowanie produkcji WM Zarzdzanie i Inynieria Produkcji Studia II stopnia o profilu: A P Przedmiot: Technologiczne i organizacyjne przygotowanie produkcji Kod przedmiotu

Bardziej szczegółowo

KARTA MODUŁU KSZTAŁCENIA

KARTA MODUŁU KSZTAŁCENIA KARTA MODUŁU KSZTAŁCENIA I. Informacje ogólne 1 Nazwa modułu kształcenia Inżynieria 2 Nazwa jednostki prowadzącej moduł Instytut Informatyki, Zakład Informatyki Stosowanej 3 Kod modułu (wypełnia koordynator

Bardziej szczegółowo

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania prowadzący: dr inż. Krzysztof Bartecki www.k.bartecki.po.opole.pl Proces tworzenia oprogramowania jest zbiorem czynności i

Bardziej szczegółowo

Regulamin Europejskiej Sieci Prewencji Kryminalnej z dnia 25 czerwca 2001 roku

Regulamin Europejskiej Sieci Prewencji Kryminalnej z dnia 25 czerwca 2001 roku Regulamin Europejskiej Sieci Prewencji Kryminalnej z dnia 25 czerwca 2001 roku Krajowi Przedstawiciele Sieci, Uwzgldniajc Decyzj Rady Unii Europejskiej z 28 maja 2001 roku ( dalej nazywanej Decyzj Rady

Bardziej szczegółowo

Metodydowodzenia twierdzeń

Metodydowodzenia twierdzeń 1 Metodydowodzenia twierdzeń Przez zdanie rozumiemy dowolne stwierdzenie, które jest albo prawdziwe, albo faªszywe (nie mo»e by ono jednocze±nie prawdziwe i faªszywe). Tradycyjnie b dziemy u»ywali maªych

Bardziej szczegółowo

Inynieria Systemów Informacyjnych

Inynieria Systemów Informacyjnych pjanusz@intertele.pl Inynieria Systemów Informacyjnych 2004 Paweł Janusz 1. Wstp Technika oprogramowania, któr stosowano w pocztkach informatyki bardzo róniła si od tej, któr uytkownicy posługuj si obecnie.

Bardziej szczegółowo

Zarzdzanie i Inynieria Produkcji Studia drugiego stopnia o profilu: A P. Wykład 15 wiczenia 30 Laboratorium Projekt

Zarzdzanie i Inynieria Produkcji Studia drugiego stopnia o profilu: A P. Wykład 15 wiczenia 30 Laboratorium Projekt Podstawy optymalizacja w ach wytwarzania WM Zarzdzanie i Inynieria Produkcji Studia drugiego stopnia o profilu: A P Przedmiot: Optymalizacja w ach wytwarzania Status przedmiotu: obowizkowy Kod: ZIP S 0

Bardziej szczegółowo

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej Analiza i projektowanie obiektowe 2017/2018 Wykład 3: Model wiedzy dziedzinowej Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Model wiedzy dziedzinowej

Bardziej szczegółowo

Kod pocztowy 00-928. Województwo Mazowieckie. Faks 630-10-19. Adres internetowy (URL) www.mi.gov.pl

Kod pocztowy 00-928. Województwo Mazowieckie. Faks 630-10-19. Adres internetowy (URL) www.mi.gov.pl OGŁOSZE O ZAMÓWIENIU Roboty budowlane Dostawy Usługi Wypełnia Urzd Zamówie Publicznych Data otrzymania ogłoszenia Numer identyfikacyjny SEKCJA I: ZAMAWIAJCY I.1) OFICJALNA NAZWA I ADRES ZAMAWIAJCEGO Ministerstwo

Bardziej szczegółowo

Cel wykładu. Literatura. Wyższa Szkoła Menedżerska w Legnicy. Modelowanie wymagań Wykład 2

Cel wykładu. Literatura. Wyższa Szkoła Menedżerska w Legnicy. Modelowanie wymagań Wykład 2 Wyższa Szkoła Menedżerska w Legnicy Systemy informatyczne w przedsiębiorstwach Zarządzanie, ZIP, sem. 6 (JG) Modelowanie wymagań Wykład 2 Grzegorz Bazydło Cel wykładu Celem wykładu jest przekazanie wiedzy

Bardziej szczegółowo

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki

Bardziej szczegółowo

Cash flow projektu zakładajcego posiadanie własnego magazynu oraz posiłkowanie si magazynem obcym w przypadku sezonowych zwyek

Cash flow projektu zakładajcego posiadanie własnego magazynu oraz posiłkowanie si magazynem obcym w przypadku sezonowych zwyek Optymalizacja zaangaowania kapitałowego 4.01.2005 r. w decyzjach typu make or buy. Magazyn czy obcy cz. 2. Cash flow projektu zakładajcego posiadanie własnego magazynu oraz posiłkowanie si magazynem obcym

Bardziej szczegółowo

XPrince dla architektów 1

XPrince dla architektów 1 Wprowadzenie do Laboratorium Inżynierii Oprogramowania Instytut Informatyki Politechnika Poznańska Jerzy Nawrocki Jerzy.Nawrocki@put.poznan.pl www.xprince.net Specjalność Software Engineering Konsorcjum

Bardziej szczegółowo

Spis treści. Analiza i modelowanie_nowicki, Chomiak_Księga1.indb :03:08

Spis treści. Analiza i modelowanie_nowicki, Chomiak_Księga1.indb :03:08 Spis treści Wstęp.............................................................. 7 Część I Podstawy analizy i modelowania systemów 1. Charakterystyka systemów informacyjnych....................... 13 1.1.

Bardziej szczegółowo

ZIP 2 S _0 Jzyk wykładowy: polski

ZIP 2 S _0 Jzyk wykładowy: polski Seminarium magisterskie WM Zarzdzanie i Inynieria Produkcji Studia drugiego stopnia o profilu: ogólnoakademickim A P Przedmiot: Seminarium magisterskie Status przedmiotu: obowizkowy Kod przedmiotu ZIP

Bardziej szczegółowo

Wzorcowy załcznik techniczny, do umowy w sprawie przesyłania faktur elektronicznych pomidzy Firm A oraz Firm B

Wzorcowy załcznik techniczny, do umowy w sprawie przesyłania faktur elektronicznych pomidzy Firm A oraz Firm B Wzorcowy załcznik techniczny, do umowy w sprawie przesyłania faktur elektronicznych pomidzy Firm A oraz Firm B Wersja draft 2.1 Na podstawie: Europejskiej Modelowej Umowy o EDI (w skrócie: EMUoE). 1. Standardy

Bardziej szczegółowo

Narzędzia CASE dla.net. Łukasz Popiel

Narzędzia CASE dla.net. Łukasz Popiel Narzędzia CASE dla.net Autor: Łukasz Popiel 2 Czym jest CASE? - definicja CASE (ang. Computer-Aided Software/Systems Engineering) g) oprogramowanie używane do komputerowego wspomagania projektowania oprogramowania

Bardziej szczegółowo

Protokół z posiedzenia Wojewódzkiej Rady Bezpieczestwa Ruchu Drogowego z dnia 18.12.2007 r.

Protokół z posiedzenia Wojewódzkiej Rady Bezpieczestwa Ruchu Drogowego z dnia 18.12.2007 r. Protokół z posiedzenia Wojewódzkiej Rady Bezpieczestwa Ruchu Drogowego z dnia 18.12.2007 r. Posiedzenie Wojewódzkiej Rady Bezpieczestwa Ruchu Drogowego odbyło si w sali konferencyjnej Wojewódzkiego Orodka

Bardziej szczegółowo

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Modelowanie diagramów klas w języku UML Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Czym jest UML - Unified Modeling Language - Rodzina języków modelowania graficznego - Powstanie na przełomie lat 80

Bardziej szczegółowo

Faza Określania Wymagań

Faza Określania Wymagań Faza Określania Wymagań Celem tej fazy jest dokładne określenie wymagań klienta wobec tworzonego systemu. W tej fazie dokonywana jest zamiana celów klienta na konkretne wymagania zapewniające osiągnięcie

Bardziej szczegółowo

Specjalno techniczna 2. Inynieria produkcji w przemyle maszynowym. Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A x P

Specjalno techniczna 2. Inynieria produkcji w przemyle maszynowym. Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A x P Specjalno techniczna. Inynieria produkcji w przemyle maszynowym Zintegrowane systemy (CIM) WM Zarzdzanie i inynieria produkcji Studia II stopnia o profilu: A x P Przedmiot: Zintegrowane systemy (CIM) Status

Bardziej szczegółowo