Tabela 1. Ogólne słowa kluczowe HAZOPu

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

Download "Tabela 1. Ogólne słowa kluczowe HAZOPu"

Transkrypt

1 Wersja postprint artykułu opublikowanego na IV Krajowej Konferencji Inżynierii Oprogramowania, Tarnowo Podgórne k. Poznania, 5-8 października 2002, Poznań: Wydawnictwo Nakom 2002 str Wykrywanie anomalii w modelach obiektowych za pomocą metody UML-HAZOP Janusz Górski, Aleksander Jarzębowicz Katedra Zastosowań Informatyki Politechnika Gdańska jango@pg.gda.pl olek@digimer.pl Streszczenie Artykuł dotyczy metody wykrywania defektów w dokumentacji oprogramowania wykonywanego z zastosowaniem notacji UML. Metoda ta, nazwana UML-HAZOP, jest adaptacją metody HAZOP szeroko stosowanej w stosunku do systemów związanych z bezpieczeństwem. Metoda ta jest ukierunkowana na wykrywanie anomalii w dokumentacji projektowej na drodze analizy przepływów pomiędzy komponentami badanego systemu. Adaptacja metody do badania oprogramowania polega na nadaniu właściwej, ukierunkowanej na specyfikę wybranego poziomu dokumentowania oprogramowania, interpretacji przepływom oraz ich anomaliom. W obecnej postaci metoda UML-HAZOP koncentruje się na diagramach klas. Dalsze prace zmierzają do jej rozszerzenia na pozostałe modele związane z UML. W artykule przedstawiono metodę UML-HAZOP oraz wyniki eksperymentów związanych z jej zastosowaniem do dwóch rzeczywistych systemów: systemu bilingowego oraz systemu zarządzania firmą.. Wprowadzenie Jednym z najistotniejszych problemów dotyczących projektów informatycznych są defekty obecne w wytwarzanym oprogramowaniu. Ich identyfikacja i naprawa pochłania znaczne zasoby czasowe i finansowe, w wyniku czego możliwe jest przekroczenie zaplanowanego harmonogramu i budżetu. Jeszcze większe niebezpieczeństwo stanowią nie wykryte defekty, które pozostają w oprogramowaniu dostarczonym klientowi i w sposób oczywisty powodują obniżenie poziomu satysfakcji użytkowników. Defekty mogą być wprowadzane już w najwcześniejszych etapach wytwarzania oprogramowania np. podczas pozyskiwania wymagań lub w trakcie tworzenia analitycznego modelu systemu. Jeśli nie

2 zostaną w porę zauważone i skorygowane, przenoszą się na kolejne reprezentacje systemu, a koszty ich naprawy w każdej kolejnej fazie systematycznie rosną. Niniejsza praca dotyczy problemu defektów obecnych w modelach obiektowych, będących produktem faz analizy systemowej oraz ogólnego projektu systemu. Skoncentrowano się na modelach wyrażonych w notacji UML [] z uwagi na stopień jej rozpowszechnienia, czyniący z niej standard de facto. Analiza modeli UML pod kątem wykrywania w nich defektów nie jest zadaniem prostym. UML posiada częściowo sformalizowaną (graficzną) składnię, natomiast semantyka jest nieformalna i w znacznym stopniu zależna od interpretacji odbiorcy. Oznacza to, że analiza może być jedynie w ograniczonym zakresie zautomatyzowana, a ostateczne decyzje (co do tego co jest, a co nie jest defektem) będą należały do człowieka. Dodatkowy problem wynika ze znacznej złożoności tworzonych systemów i co za tym idzie złożoności związanych z nimi modeli. Nawet jeżeli zastosowano właściwe techniki redukcji złożoności (abstrakcja, dekompozycja), to w wielu wypadkach modele w całości są trudne do intelektualnego opanowania. Metody ich analizy powinny, w takim zakresie jak to jest możliwe, ograniczać rozpatrywany zakres modelu, redukując w ten sposób wysiłek intelektualny analityka. Metody takie nazwiemy metodami analizy częściowej. Przykładem analizy częściowej jest np. sprawdzenie czy każda nazwa klasy została wyspecyfikowana zgodnie z przyjętą konwencją wystarczy wtedy skoncentrować uwagę po kolei na każdej z klas, sprawdzając jej nazwę, bez potrzeby rozpatrywania jej roli w ramach całego systemu. Fakt, że bardziej zaawansowana analiza modeli UML wymaga znacznego udziału człowieka (chyba że semantyka tych modeli zostanie w znacznie większym niż obecnie stopniu sformalizowana, co raczej nie nastąpi w najbliższych latach) nie oznacza, że proces analizy powinien być realizowany ad hoc i nie ma podlegać sterowaniu. Oczywiste oczekiwania, formułowane w stosunku do metody analizy obejmują: Kompletność analiza jest prowadzona w sposób, który gwarantuje wykrywanie potencjalnie wszystkich defektów w przewidzianym dla niej zakresie; Systematyczność zalecana metoda postępowania powoduje, że uwaga analityka koncentrowana jest na fragmencie modelu odpowiednim do typu poszukiwanego defektu oraz prowadzi analityka poprzez wszystkie takie istotnie różne fragmenty; Uniwersalność - metoda może być zastosowana do jak najszerszej klasy systemów, bez ograniczeń związanych z ich przeznaczeniem lub środowiskiem, czy też z technologiami wykorzystywanymi do ich budowy; Wspomaganie metoda wspomaga analityka poprzez związane z nią wzorce, listy kontrolne, narzędzia itp. Jedną z dróg prowadzących do odkrycia nowej metody analizy jest zaadaptowanie metody już istniejącej, która potwierdziła swoją skuteczność w odniesieniu do innych obszarów problemowych. Takie właśnie podejście jest prezentowane w niniejszym artykule. Przedmiotem zainteresowania jest HAZOP (ang. Hazard and Operability Studies), metoda szeroko stosowana w analizie systemów związanych z bezpieczeństwem. HAZOP koncentruje się na połączeniach pomiędzy różnymi komponentami systemu i bada, czy i w jaki sposób odchylenia od prawidłowych wartości atrybutów tych połączeń mogą mieć wpływ na awarie w rozpatrywanym systemie. Odchylenia te są sugerowane

3 analitykowi poprzez słowa kluczowe (ang. guide words), które w zestawieniu z konkretnymi atrybutami połączeń dają obraz specyficznych sytuacji, które należy wziąć pod uwagę. Prace nad przystosowaniem HAZOPu do analizy oprogramowania miały miejsce w pierwszej połowie lat 90, a ich podsumowaniem jest wydany przez brytyjskie ministerstwo obrony Interim Defense Standard [2]. Zawiera on opis organizacji procesu analizy oraz kryteria poszukiwania defektów w różnych reprezentacjach systemu. Kryteria te zostały określone dość ogólnie i odnosiły się do dawniej stosowanych notacji, które obecnie w większości wyszły z powszechnego użycia, zastąpione przez Unified Modelling Language. Problem przystosowania metody HAZOP do analizy reprezentacji systemu wyrażonych przy pomocy różnych notacji związanych z projektowaniem oprogramowania pojawiał się również w innych pracach ([3],[4]). Próbowano również modyfikować tę metodę dla potrzeb konkretnych problemów np. generowanie mutacji podstawowych wyrażeń składniowych języka JAVA [5], sformalizowana analiza bezpieczeństwa interfejsu użytkownika [6], analiza zabezpieczeń (ang. security) systemów [7]. W artykule przedstawiono wyniki prac zmierzających do adaptacji metody HAZOP do analizy modeli związanych z językiem UML. Adaptacja ta polega na nadaniu właściwych dla odpowiednich modeli UML interpretacji połączeniom w modelu, ich atrybutom oraz słowom kluczowym HAZOPu, zaproponowaniu sposobu postępowania w trakcie analizy (procesu analizy) oraz przeprowadzeniu eksperymentalnej walidacji zaproponowanego podejścia. Wyniki uzyskane w powyższych zakresach (interpretacja słów kluczowych, definicja procesu oraz eksperymentalna walidacja) przedstawiono w kolejnych rozdziałach niniejszego artykułu. 2. Metoda UML-HAZOP W dalszej części artykułu przyjmujemy, że te elementy modelu, które w wyniku analizy zostają uznane przez analityka za błędne lub budzące wątpliwości, określamy jako anomalie. Anomalię, która została potwierdzona przez niezależne źródło jako rzeczywisty błąd w rozpatrywanym modelu, nazwiemy defektem. Adaptacja HAZOPu do notacji UML polega na określeniu, jakie elementy poszczególnych diagramów UML interpretujemy jako połączenia i ich atrybuty oraz jakie anomalie modelu są sugerowane przez zastosowanie poszczególnych słów kluczowych do poszczególnych atrybutów. W wyniku otrzymujemy listy kontrolne, wyliczające anomalie, które mogą zachodzić w odniesieniu do rozpatrywanego elementu modelu. Zastosowano ogólny zestaw słów kluczowych zaproponowany w standardzie [2], który przedstawia Tabela. W dalszej części podano interpretacje tych słów kluczowych w zastosowaniu do diagramu klas UML. W diagramie klas, z połączeniem (w sensie HAZOPu) mamy do czynienia wtedy, gdy pomiędzy rozpatrywanymi klasami występuje zależność (ang. relationship). Według specyfikacji UML [] wyróżnia się następujące rodzaje zależności: zależność semantyczna pomiędzy klasami, (ang. association), zależność informująca o tym, że implementacja lub funkcjonowanie danej klasy lub klas wymaga obecności innej klasy lub klas, (ang. dependency),

4 zależność pomiędzy dwiema wersjami obiektu lub obiektem i jego kopią, występuje w diagramach obiektów, (ang. flow), zależność uogólniania, związana z dziedziczeniem cech, (ang. generalization). Tabela. Ogólne słowa kluczowe HAZOPu Słowo kluczowe NO MORE LESS AS WELL AS PART OF REVERSE OTHER THAN EARLY LATE BEFORE AFTER Ogólna interpretacja Kompletny brak zamierzonego rezultatu, przy braku innych, zastępczych efektów Zbyt wysoka wartość parametru ilościowego Zbyt niska wartość parametru ilościowego Oprócz zamierzonego rezultatu otrzymano inny, dodatkowy Zamierzony rezultat został uzyskany tylko częściowo Otrzymano logiczne przeciwieństwo zamierzonego rezultatu Brak zamierzonego rezultatu, ale otrzymano inny, odmienny Zdarzenie zachodzi wcześniej niż zamierzono Zdarzenie zachodzi później niż zamierzono Zdarzenie zachodzi przed innym zdarzeniem, w stosunku do którego miało być późniejsze Zdarzenie zachodzi po innym zdarzeniu, w stosunku do którego miało być wcześniejsze W pracach nad metodą UML-HAZOP skoncentrowano się na najczęściej stosowanych typach zależności: Association i Generalization. Za atrybuty (w sensie HAZOPu) przyjmowane są zarówno same zależności (patrz tabela 2 i 8), jak również charakterystyki przypisane im w notacji UML (tabele 3-7). Charakterystyki te według specyfikacji UML wyglądają następująco: Charakterystyka zależności typu Association: name (nazwa związku) Charakterystyka zależności typu Association od strony jednej z uczestniczących w niej klas: AssociationEnd: aggregation (obecność relacji typu całość-część) changeability (możliwość modyfikacji przez klasę skojarzoną) ordering (uporządkowanie zbioru instancji klas) isnavigable (możliwość przejścia do klasy z punktu widzenia klasy skojarzonej)

5 multiplicity (liczność związku) name (nazwa roli klasy w związku) targetscope (czy związek dotyczy klasy czy jej instancji) visibility (widoczność klasy z punktu widzenia klasy skojarzonej) Charakterystyka zależności typu Generalization: discriminator (kryterium dziedziczenia) Interpretacje przypisane poszczególnym zestawieniom atrybutów ze słowami kluczowymi HAZOPu podano w tabelach zamieszczonych poniżej. W tabelach uwzględniono tylko te słowa kluczowe, które można powiązać z sensowną interpretacją anomalii w odniesieniu do rozpatrywanego atrybutu, pozostałe pominięto. Tabela 2. Interpretacje anomalii dla zależności Association Słowo kluczowe Interpretacja AS WELL AS OTHER THAN Rozpatrywane klasy nie pozostają ze sobą w związku, cały związek jest zbędny i powinien być usunięty Niewłaściwy rodzaj związku, powinien zostać zdefiniowany związek innego rodzaju np. Generalization zamiast Association PART OF Związek jest poprawny, ale oprócz niego pomiędzy rozpatrywanymi klasami należy zdefiniować dodatkowy związek lub związki Tabela 3. Interpretacje anomalii dla atrybutu Association.name Słowo kluczowe NO REVERSE OTHER THAN AS WELL AS PART OF Interpretacja Związek nie ma nazwy mimo, że powinien być nazwany Błędny kierunek odczytywania nazwy związku, w którym znajdują się klasy Nazwa związku jest nieprawidłowa i nie oddaje jego znaczenia; należy użyć innej nazwy Nazwa związku jest zbyt ogólna, należy ją uszczegółowić Nazwa oddaje jedynie częściowo istotę związku, należy ją uogólnić

6 Tabela 4. Interpretacje anomalii dla atrybutu AssociationEnd.aggregation Słowo kluczowe NO AS WELL AS OTHER THAN MORE LESS Interpretacja Nie zaznaczono agregacji, która powinna wystąpić Zaznaczono agregację, która w rzeczywistości nie ma miejsca Zaznaczono niewłaściwy typ agregacji tzn. silną zamiast słabej lub odwrotnie Agregacja obejmuje zbyt wiele klas składowych, niektóre nie powinny wchodzić w jej skład Agregacja nie obejmuje niektórych klas (obecnych na diagramie lub też nie), które powinny wchodzić w jej skład Tabela 5. Interpretacje anomalii dla atrybutu AssociationEnd.ordering Słowo kluczowe NO AS WELL AS Interpretacja Brak uporządkowania mimo, że powinno występować Wprowadzono uporządkowanie, które nie powinno mieć miejsca Tabela 6. Interpretacje anomalii dla atrybutu AssociationEnd.multiplicity Słowo kluczowe MORE LESS Interpretacja Krotność związku jest zbyt duża (może to dotyczyć górnego lub dolnego zakresu liczności) Krotność związku jest zbyt mała (może to dotyczyć górnego lub dolnego zakresu liczności) Tabela 7. Interpretacje anomalii dla atrybutu AssociationEnd.name Słowo kluczowe NO OTHER THAN AS WELL AS PART OF Interpretacja Strona związku nie ma nazwy mimo, że powinna być nazwana Nazwa strony związku jest nieprawidłowa, powinna być zdefiniowana inna nazwa Nazwa strony związku jest zbyt ogólna, należy ją uszczegółowić Nazwa oddaje jedynie częściowo istotę strony związku, należy ją uogólnić

7 Tabela 8. Interpretacje anomalii dla zależności Generalization Słowo kluczowe AS WELL AS MORE LESS OTHER THAN Interpretacja Klasy nie pozostają ze sobą w związku dziedziczenia, cały związek jest zbędny i powinien być usunięty Zbyt wiele klas dziedziczących, niektóre są zbędne Zbyt mało klas dziedziczących, brak niektórych potrzebnych klas Zdefiniowany związek jest niepoprawny, powinien być zdefiniowany inny związek niż uogólnienie 3. Proces UML-HAZOP Proces analizy według metody UML-HAZOP został przedstawiony na rysunku. Proces ten obejmuje szereg aktywności wykonywanych w kolejnych krokach. Listy kontrolne diagramy UML Zgłoszenia zmian procesu Podsumowanie analizy Planowanie Przygotowanie Kontrola i Rejestracja Ocena Redakcja Audit redakcji Wyjście Plan Wykryte anomalie Zapis defektów i sugestie zmian Produkt wyjściowy Rysunek.. Struktura procesu analizy metodą UML-HAZOP. Pierwszym krokiem procesu jest planowanie. W ramach tego kroku podejmowana jest decyzja o przedmiocie i zakresie analizy, dobierane są odpowiednie listy kontrolne, wyznaczani uczestnicy oraz układany harmonogram dalszych działań. Przygotowanie obejmuje działania związane z zapoznaniem

8 uczestników z metodą oraz zapoznanie się ich (w niezbędnym zakresie) z przedmiotem analizy (badany system i jego modele). Krok kontroli i rejestracji polega na systematycznej analizie diagramów UML według przygotowanych wcześniej list kontrolnych. Wykryte anomalie są rejestrowane w przygotowanych wcześniej strukturach danych pokazanych w tabeli 9. Związek: <identyfikacja związku> Tabela 9. Struktura danych dla rejestracji wyników. Atrybut Słowo kluczowe Wynik <nazwa atrybutu> <słowo kluczowe HAZOPu> <opis > Przy wypełnianiu kolumny Wynik stosowana jest następująca konwencja: D zaobserwowano anomalię, którą wstępnie zaklasyfikowano jako defekt, Q pytanie, zaobserwowano niejasność wymagającą przedyskutowania, C poprawka (nanoszona w związku z wykryciem defektu w innym elemencie np. jeśli zmieniamy związek z agregacją na zwykły, powinniśmy nadać mu nazwę) N brak anomalii, element jest prawidłowy X nie analizowano Rejestrowane są wszystkie przeanalizowane przypadki, łącznie z tymi, gdzie dla danej kombinacji atrybutu ze słowem kluczowym nie stwierdzono żadnej anomalii. Krok oceny wiąże się z ustaleniem ostatecznej interpretacji wykrytych anomalii, zaklasyfikowaniem ich (w przypadku potwierdzenia zasadności) jako defektów w modelu oraz ustaleniem znaczenia tych defektów. Krok ten wymaga udziału ekspertów w zakresie ocenianego systemu i związanej z nim dziedziny. W wyniku powstaje lista wykrytych defektów wraz z kwalifikacją co do ich znaczenia w kontekście analizowanego systemu (np. pomijalne, znaczne, krytyczne). W kroku tym są również rejestrowane sugestie dotyczące zmian modelu w sposób eliminujący z niego wykryte defekty. Należy jednak podkreślić, że nie jest to zasadniczy cel dokonywanych analiz i sugestie te stanowią jedynie (pożądany) efekt uboczny procesu analizy. W kroku oceny pożądany jest udział autora analizowanego modelu. Jeżeli w kroku tym uczestniczy większa liczba osób należy zadbać o to, by spotkanie ich nie przerodziło się w jałową dyskusję i by szybko dążyło do ustalenia ostatecznych konkluzji. Techniki wspomagające osiąganie tych celów są poza zakresem niniejszego artykułu. Lista defektów stanowi punkt wyjścia w kroku redakcji, który ma na celu poprawę przeanalizowanych modeli. Krok ten jest realizowany przez autora (autorów) modelu. Po jego zakończeniu, dokonywany jest formalny przegląd mający na celu potwierdzenie, że wszystkie wykryte defekty zostały usunięte. Proces kończy się formalnym zamknięciem analizy oraz zebraniem i rejestracją danych, które ją podsumowują (pracochłonność, liczby wykrytych anomalii i defektów, metryki efektywności itp.). W trakcie procesu analizy, a w szczególności w krokach przygotowania, kontroli i rejestracji, oceny oraz redakcji mogą być formułowane i rejestrowane sugestie dotyczące poprawy procesu w celu

9 zwiększenia jego skuteczności i efektywności. Sugestie te stanowią dane wejściowe do podjęcia działań zmierzających do poprawy w dłuższym horyzoncie czasowym. 4. Eksperymentalna walidacja metody W celu oceny skuteczności metody UML-HAZOP zaplanowano serię eksperymentów. Podstawowym celem tych eksperymentów było stwierdzenie, na ile metoda ta jest skuteczna w wykrywaniu defektów w modelach UML tworzonych we wczesnych etapach rozwoju systemu. Koncentracja na wczesnych etapach rozwoju (analiza, projekt ogólny) wydaje się być szczególnie istotna ze względu na to, że defekty które wtedy powstają i pozostają nie wykryte, mogą okazać się szczególnie kosztowne podczas ich usuwania w etapach późniejszych. W wypadku potwierdzenia dużej skuteczności wykrywania, kolejnym celem eksperymentalnej walidacji będzie poszukiwanie takiej struktury procesu analizy, która minimalizuje relację nakładów do uzyskiwanych efektów. Do chwili obecnej zakończone zostały trzy eksperymenty; poniżej podano ich bliższą charakterystykę. 4. Eksperyment : System bilingowy ocena retrospektywna Analizie poddano system przeznaczony dla operatora niewielkiej sieci telefonicznej. Jego zadaniem jest naliczanie opłat telefonicznych w oparciu o dane dotyczące połączeń oraz obsługa wystawiania i regulowania rachunków. System przechowuje informacje o abonentach oraz związanych z nimi liniach telefonicznych, połączeniach i opłatach. Historia tego systemu liczy około 6 lat. System został wytworzony jako pomoc dydaktyczna przeznaczona dla Podyplomowego Studium Inżynierii Oprogramowania. Dokumentacja systemu stanowi zbiór rozwiązań wzorcowych, które są udostępniane słuchaczom Studium w celu porównania oraz wprowadzenia korekt we własnej dokumentacji, tak aby błędy pojedynczego etapu nie uniemożliwiły realizacji całego projektu. Modele, które poddano analizie były wielokrotnie przeglądane zarówno przez słuchaczy Studium, jak również przez ich autorów, w trakcie opracowywania kolejnych wydań systemu. Analizę UML-HAZOP wykonano w stosunku do dwóch dokumentów: modelu klas reprezentującego wynik analizy systemowej oraz dokumentu projektu szczegółowego. Analityk nie miał wglądu w pozostałą część dokumentacji, w tym w specyfikację wymagań. Istotne wyniki analizy dotyczyły diagramów klas i diagramów stanów. Dla diagramów przypadków użycia i diagramów sekwencji analiza nie przyniosła znaczących rezultatów (ponieważ badany system jest w znacznym stopniu statyczny, diagramy związane z jego dynamiką były znacznie zredukowane). Wyjściowy diagram klas systemu zawierał 7 klas oraz 4 związków. 4.2 Eksperyment 2: System zarządzania firmą SZ@Fir ocena retrospektywna Eksperyment ten został przeprowadzony w stosunku do modeli wytworzonych dla rzeczywistej aplikacji. System Sz@Fir stanowi zintegrowane, dostępne za pośrednictwem sieci narzędzie

10 zarządzania niewielką firmą i jest cały czas rozwijany o nowe funkcjonalności, podczas kolejnych przyrostów powstających w cyklu wytwarzania. Funkcjonalność obejmuje do tej pory m.in. gospodarkę magazynową, księgowość, logistykę i realizację sprzedaży, obsługę cenników, przekazywanie faktur. System jest wytwarzany przez firmę Prokom Software SA, która wyraziła zainteresowanie pracami nad metodą UML-HAZOP i udostępniła dla celów eksperymentu odpowiednie modele UML oraz część dokumentacji, obejmującą projekty koncepcyjne dwóch podsystemów zrealizowanych w ramach ostatniego przyrostu. Udostępnione modele nie stanowiły ostatecznych wersji, w oparciu o które zaimplementowano system i zawierały defekty, znane zespołowi projektowemu, wykryte w ramach dalszych kroków procesu wytwórczego. Informacje te nie były jednak znane analitykowi prowadzącemu analizę UML-HAZOP. W ramach eksperymentu analizie poddano diagramy klas. Były to dwa diagramy, główny i uzupełniający, ten drugi zawierał jedynie informacje dotyczące cenników. W sumie oba diagramy zawierały 56 klas oraz 79 związków. 4.3 Eksperyment 3: System zarządzania firmą SZ@Fir ocena bieżąca Eksperyment został przeprowadzony we współpracy z firmą Prokom Software S.A. i dotyczył kolejnego przyrostu opisanego wcześniej systemu zarządzania firmą, a różnił się od poprzednich tym, że analiza UML-HAZOP została wykonana bezpośrednio po wytworzeniu modeli UML, a przed ich dalszym wykorzystaniem w procesie wytwórczym. Druga istotna różnica dotyczyła jakości udostępnionych modeli tym razem był to model w postaci finalnej, po przejściu przez fazy uzgodnień z twórcami specyfikacji systemu oraz przeglądów. 5. Wyniki eksperymentów Wyniki ilościowe związane z poszczególnymi eksperymentami zostały przedstawione w osobnych tabelach (0,,3). W pozycji Liczba przeanalizowanych przypadków chodzi o przypadki, dla których konieczna była ocena dokonywana przez człowieka. Podana liczba nie obejmuje przypadków, które można automatycznie odrzucić np. dla związku bez nazwy sprawdzamy jedynie przypadek związek nie ma nazwy, mimo że powinien być nazwany, bez rozpatrywania pozostałych możliwych anomalii dotyczących trafności nazwy, kierunku jej odczytywania itp. Pozycja Liczba znaczących defektów określa liczbę defektów, które uznano za poważne (nie dotyczy to np. defektów związanych z nazewnictwem związków). 5. Eksperyment : System bilingowy Wyniki analizy zostały podsumowane w poniższej tabeli.

11 Tabela 0: Wyniki eksperymentu Liczba osób zaangażowanych w analizę Czas przygotowania list kontrolnych 2 roboczogodz. Czas przygotowania merytorycznego 4 roboczogodz. Czas kontroli 2,5 roboczogodz. Czas oceny 3,5 roboczogodz. Liczba przeanalizowanych przypadków ok. 70 Liczba wykrytych anomalii Liczba potwierdzonych defektów () 8 Liczba znaczących defektów 6 Poniżej zamieszczono przykładową tabelę zawierającą wyniki dokonanych analiz. Tabela : Przykład wyników kontroli diagramu klas Związek: is_part_of(charge,bill) Atrybut Słowo Wynik kluczowe Association AS WELL AS N Association OTHER THAN N Association PART OF N Association.name NO N Association.name REVERSE N Association.name OTHER THAN N Association.name AS WELL AS N Association.name PART OF N End - Charge AssociationEnd.aggregation NO N AssociationEnd.aggregation AS WELL AS N AssociationEnd.aggregation OTHER THAN N AssociationEnd.aggregation MORE N AssociationEnd.aggregation LESS N AssociationEnd.ordering NO D Pozycje rachunku informujące o opłatach za poszczególne linie powinny być uporządkowane. W przypadku dużej firmy dzierżawiącej wiele linii ma to znaczenie. () Anomalię uznano za potwierdzoną jako defekt, jeżeli co najmniej dwóch na trzech ekspertów uczestniczących w etapie oceny uznało, że jest to rzeczywiście błąd w modelu.

12 AssociationEnd.ordering AS WELL AS N AssociationEnd.multiplicity MORE N AssociationEnd.multiplicity LESS D Powinna być liczność... W każdym rachunku będzie przynajmniej opłata za linię (lub więcej jeśli abonent ma więcej linii). AssociationEnd.name NO N AssociationEnd.name OTHER THAN N AssociationEnd.name AS WELL AS N AssociationEnd.name PART OF N End 2 - Bill AssociationEnd.aggregation NO N AssociationEnd.aggregation AS WELL AS N AssociationEnd.aggregation OTHER THAN D Opłata wchodzi w skład tylko jednego rachunku, powinna tu być zaznaczona kompozycja. AssociationEnd.aggregation MORE N AssociationEnd.aggregation LESS N AssociationEnd.ordering NO N AssociationEnd.ordering AS WELL AS N AssociationEnd.multiplicity MORE N AssociationEnd.multiplicity LESS N AssociationEnd.name NO N AssociationEnd.name OTHER THAN N AssociationEnd.name AS WELL AS N AssociationEnd.name PART OF N Na rysunku 2 pokazano analizowany diagram klas z zaznaczonymi okręgiem miejscami, w których wykryto anomalie potwierdzone jako defekty.

13 ::Portion_of_data month year read_in ::Billing_data caller_no dialed_no trunk_line start_time end_time duration count_call ::Prefix number get_time_tab ::Time_tab calculate_pulses D points_to selects generated_by ::Line number counter get_line_subs set_billing_data D2 ::Subscriber name address pay_status select_lines get_last_bill sel_subs update_pay_status date text leases ::Reminder issued_for based_on concerns ::Detailed_bill year month /total /sum count_detailed_bill ptint_detailed_bill issued_for concerns D3 D5 ::Charge counter_state no_of_pulses sum count_charges_subs count_line ::Bill bill_id month year fixed_charge var_rate debt /total /sum print_date pay_date count_bill print_bills_subs prepare_bill print_all_bills D7 D4 ::Penalty D6 ::T_t_fixed frequency get_frequency ::T_t_flex 2 ::Sub_t_t frequency beg_time end_time get_values D8 ::Authorization ::Parameters ::Main from data to_data capital /value payed_prec count_penalty Rysunek 2. Diagram klas z etapu analizy Opis defektów zaznaczonych na diagramie: D - Zaznaczono agregację, powinna być kompozycja. D2 - Powinna być liczność 0.., mogą występować linie wolne, bez abonenta. D3 - Pozycje rachunku informujące o opłatach za poszczególne linie powinny być uporządkowane. D4 - Powinna być liczność... W każdym rachunku będzie przynajmniej opłata za linię (lub więcej jeśli abonent ma więcej linii). D5 - Rachunki widziane ze strony abonenta powinny być uporządkowane wg kolejności czasowej. D6 - Opłata wchodzi w skład tylko jednego rachunku, powinna tu być zaznaczona kompozycja. D7 - W skład rachunku wchodzi najwyżej kara dotycząca rachunku z poprzedniego miesiąca. Związek powinien mieć liczność 0...

14 D8 - Nie ma uzasadnienia liczność 2, powinna być. 5.2 Eksperyment 2: System zarządzania firmą Wyniki analizy zostały podsumowane w poniższej tabeli. Liczba osób zaangażowanych w analizę Czas przygotowania list kontrolnych Czas przygotowania merytorycznego (studiowanie celów i zakresu systemu) Czas kontroli Czas oceny Tabela 2: Wyniki eksperymentu 2 4,5 roboczogodz. 6 roboczogodz. 8,5 roboczogodz. 6 roboczogodz. Diagram Faktury Liczba przeanalizowanych przypadków ok. 750 Liczba wykrytych anomalii 94 Liczba potwierdzonych defektów () 7 Liczba znaczących defektów 35 Diagram Cenniki Liczba przeanalizowanych przypadków ok. 40 Liczba wykrytych anomalii 0 Liczba potwierdzonych defektów () 9 Liczba znaczących defektów Eksperyment 3: System zarządzania firmą ocena bieżąca Wyniki analizy zostały podsumowane w poniższej tabeli. () Wyniki analizy były weryfikowane przez członków zespołu projektowego, którzy opracowywali analizowany model

15 Tabela 3: Wyniki eksperymentu 3 Liczba osób zaangażowanych w analizę Czas przygotowania list kontrolnych,25 roboczogodz. Czas przygotowania merytorycznego 9 roboczogodz. Czas kontroli 3,75 roboczogodz. Czas oceny 7 roboczogodz. Liczba przeanalizowanych przypadków ok. 360 Liczba wykrytych anomalii 44 Liczba potwierdzonych defektów () 40 Liczba znaczących defektów 5 6. Podsumowanie Uzyskane wyniki eksperymentalne wskazują na znaczny potencjał metody UML-HAZOP w zastosowaniach praktycznych. Jest to szczególnie widoczne, jeżeli zauważymy, że analizy są w stanie wykryć defekty nawet w modelach poddawanych wcześniej weryfikacji i wykorzystanych w rzeczywistych aplikacjach. Uderzający jest stosunkowo nieduży nakład prac, które nie poddają się mechanizacji, a więc nakładów na przygotowanie merytoryczne, kontrolę i rejestrację oraz ocenę. W wypadku Eksperymentu nakłady te wyniosły łącznie 0 roboczogodzin, co przy 8 potwierdzonych defektach daje nakład,25 roboczogodzin na wykrycie jednego defektu. Przy założeniu, że koszt usunięcia defektu w etapach późniejszych wynosi 0 roboczogodzin (w świetle danych publikowanych np. w [9] jest to założenie stosunkowo łagodne) oznacza to, że efektywność metody wyniosła w tym wypadku 8. Efektywność rozumiemy jako stosunek pracy zaoszczędzonej do pracy wydatkowanej. W wypadku Eksperymentu 2, gdzie analizie poddano modele nie podlegające wcześniejszej weryfikacji, efektywność metody wyniosła 9,75 (80 potwierdzonych defektów przy nakładzie pracy 40,5 roboczogodzin). Z kolei w Eksperymencie 3, dotyczącym modelu poddanego uprzednio zabiegom weryfikacyjnym, wykrytych zostało 40 defektów przy nakładzie 2 roboczogodzin, co oznacza efektywność 9,05. Uzyskane wyniki dotyczące liczby wykrytych defektów wyglądają bardzo interesująco jeżeli zauważymy, że modele badane w Eksperymentach i 3 były wcześniej poddane weryfikacji i uznane za zakończone. Odnosi się to szczególnie do systemu bilingowego, ze względu na długi okres jego użytkowania i liczbę osób zaangażowanych w czytanie modeli. Metoda UML-HAZOP jest metodą analizy częściowej, tzn. koncentruje uwagę analityka na wybranych fragmentach modelu i nie jest nastawiona na wykrywanie wszystkich defektów. Nie może być w () Wyniki analizy były weryfikowane przez członków zespołu projektowego, którzy opracowywali analizowany model

16 związku z tym traktowana jako jedyna metoda analizy i powinna być stosowana w połączeniu z innymi metodami. Dzięki ograniczeniu zakresu jest to jednak metoda, która nie wymaga znacznych nakładów na przygotowanie analityka do pracy i może być stosowana nawet wtedy, gdy analityk nie panuje intelektualnie nad całym modelem, a jedynie koncentruje się na jego fragmentach (zgodnie z listami kontrolnymi UML-HAZOP). Dzięki temu nakłady związane z realizacją metody UML-HAZOP mogą być utrzymane na stosunkowo niskim poziomie i nie będą nieproporcjonalnie szybko rosły wraz ze wzrostem rozmiaru badanych modeli. Są to jednak w chwili obecnej jedynie hipotezy, których potwierdzenie wymaga dalszych badań eksperymentalnych. Warto również zauważyć, że pracochłonność związana z opracowaniem list kontrolnych może zastać prawie w całości przerzucona na narzędzia wspomagające zastosowanie metody. Przy założeniu, że analizowane modele są przechowywane w repozytorium elektronicznym (co w obecnej sytuacji jest normalne) łatwo można opracować program, który automatycznie wygeneruje listy kontrolne dotyczące połączeń w modelu. Takie właśnie narzędzie wspomagające jest obecnie w planie dalszych prac nad rozwojem metody UML-HAZOP. Bibliografia [] Object Management Group, OMG Unified Modeling Language Specification, Version.4, September 200 [2] Interim Defense Standard 00-58, HAZOP Studies on System Containing Programmable Electronics, UK Ministry of Defense 996. [3] McDermid J., Pumfrey D., Development of hazard analysis to aid software design, COMPASS 94: Proceedings of the Ninth Annual Conference on Computer Assurance, pp [4] Fencott C., Hebbron B., The application of HAZOP studies to integrated requirements models for control systems Proceedings of Computer Safety, Reliability and Security, 3 th International Conference SAFECOMP 994. [5] Kim S., Clark J., McDermid J., The rigorous generation of JAVA mutation operators using HAZOP, 2 th International Conference Software and Systems Engineering and their Applications (ICSSEA 94). [6] Hussey A., Safety analysis of the Druide user-interface, SVRC DCS, The University of Queensland, Technical Report No. 99-3, March 999. [7] Winther R., Johnsen O., Gran B., Security assessments of safety critical systems using HAZOPs, Proceedings of Computer Safety, Reliability and Security, 20 th International Conference SAFECOMP 200, Springer Lecture Notes in Computer Science 287, pp [8] Katedra Zastosowań Informatyki Politechniki Gdańskiej, The billing system for a telephone exchange (STACT) UML Model, raport wewnętrzny, [9] Case Study II: Finding Defects Earlier Saves Big $$$, (strona odwiedzona ).

Metoda inspekcji modeli obiektowych

Metoda inspekcji modeli obiektowych Metoda inspekcji modeli obiektowych Aleksander Jarzębowicz olek@eti.pg.gda.pl Katedra Inżynierii Oprogramowania Politechnika Gdańska Seminarium Katedralne 5 luty 2008 Plan prezentacji Motywacja: defekty

Bardziej szczegółowo

Zastosowania metody HAZOP w inżynierii oprogramowania

Zastosowania metody HAZOP w inżynierii oprogramowania Zastosowania metody HAZOP w inżynierii oprogramowania Aleksander Jarzębowicz Streszczenie: Artykuł przedstawia HAZOP metodę analizy modeli systemów oraz jej zastosowania w dziedzinie inżynierii oprogramowania

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

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

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

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

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

Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES) KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Modelowanie i Analiza Systemów Informatycznych Nazwa modułu w języku angielskim Modeling and Analysis of Information Systems Obowiązuje od roku akademickiego

Bardziej szczegółowo

Zasady organizacji projektów informatycznych

Zasady organizacji projektów informatycznych Zasady organizacji projektów informatycznych Systemy informatyczne w zarządzaniu dr hab. inż. Joanna Józefowska, prof. PP Plan Definicja projektu informatycznego Fazy realizacji projektów informatycznych

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

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

Spis treúci. 1. Wprowadzenie... 13

Spis treúci. 1. Wprowadzenie... 13 Księgarnia PWN: W. Dąbrowski, A. Stasiak, M. Wolski - Modelowanie systemów informatycznych w języku UML 2.1 Spis treúci 1. Wprowadzenie... 13 2. Modelowanie cele i metody... 15 2.1. Przegląd rozdziału...

Bardziej szczegółowo

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas Analiza i projektowanie obiektowe 2016/2017 Wykład 10: Tworzenie projektowego diagramu klas Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Projektowy

Bardziej szczegółowo

Jakość w procesie wytwarzania oprogramowania

Jakość w procesie wytwarzania oprogramowania Jarosław Kuchta Jakość Oprogramowania http://www.eti.pg.gda.pl/katedry/kask/pracownicy/jaroslaw.kuchta/jakosc/ J.Kuchta@eti.pg.gda.pl Względny koszt wprowadzania zmian w zależności od fazy realizacji projektu

Bardziej szczegółowo

PLAN ZARZĄDZANIA KONFIGURACJĄ OPROGRAMOWANIA PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU>

PLAN ZARZĄDZANIA KONFIGURACJĄ OPROGRAMOWANIA PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU> Załącznik nr 4.6 do Umowy nr 35-ILGW-253-.../20.. z dnia... MINISTERSTWO FINANSÓW DEPARTAMENT INFORMATYKI PLAN ZARZĄDZANIA KONFIGURACJĄ OPROGRAMOWANIA PROJEKT WERSJA

Bardziej szczegółowo

Opis metodyki i procesu produkcji oprogramowania

Opis metodyki i procesu produkcji oprogramowania Opis metodyki i procesu produkcji oprogramowania Rational Unified Process Rational Unified Process (RUP) to iteracyjny proces wytwarzania oprogramowania opracowany przez firmę Rational Software, a obecnie

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

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

E-1IZ s2. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

E-1IZ s2. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) KARTA MODUŁU / KARTA PRZEDMIOTU Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. Kod modułu E-1IZ2-1003-s2 Nazwa modułu Modelowanie i Analiza Systemów Informatycznych Nazwa modułu

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

Inżynieria oprogramowania

Inżynieria oprogramowania Inżynieria oprogramowania Instrukcja do laboratorium rok akad. 2014/2015 Informacje podstawowe: Celem laboratorium jest nabycie przez studentów praktycznej umiejętności wykonywania modeli analitycznych

Bardziej szczegółowo

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation)

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation) Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation) Zarządzanie wymaganiami Ad hoc (najczęściej brak zarządzania nimi) Niejednoznaczna, nieprecyzyjna komunikacja Architektura

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

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik Projektowanie oprogramowania Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik Agenda Weryfikacja i zatwierdzanie Testowanie oprogramowania Zarządzanie Zarządzanie personelem

Bardziej szczegółowo

Plan zarządzania projektem

Plan zarządzania projektem Plan zarządzania projektem Opracował: Zatwierdził: Podpis: Podpis: Spis treści: 1. Wst p... 2 1.1 Cel... 2 1.2 Zakres... 2 1.3 Przeznaczenie dokumentu... 2 1.4 Organizacja dokumentu... 2 1.5 Dokumenty

Bardziej szczegółowo

Rysunek 1: Przykłady graficznej prezentacji klas.

Rysunek 1: Przykłady graficznej prezentacji klas. 4 DIAGRAMY KLAS. 4 Diagramy klas. 4.1 Wprowadzenie. Diagram klas - w ujednoliconym języku modelowania jest to statyczny diagram strukturalny, przedstawiający strukturę systemu w modelach obiektowych przez

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

Zapewnij sukces swym projektom

Zapewnij sukces swym projektom Zapewnij sukces swym projektom HumanWork PROJECT to aplikacja dla zespołów projektowych, które chcą poprawić swą komunikację, uprościć procesy podejmowania decyzji oraz kończyć projekty na czas i zgodnie

Bardziej szczegółowo

E-I2SG-2010-s1. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

E-I2SG-2010-s1. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) KARTA MODUŁU / KARTA PRZEDMIOTU Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. Kod modułu E-I2SG-2010-s1 Nazwa modułu Modelowanie i Analiza Systemów Informatycznych Nazwa modułu

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

System Kontroli Bazy Danych Topograficznych (SKBDT) zawód kartografa?

System Kontroli Bazy Danych Topograficznych (SKBDT) zawód kartografa? System Kontroli Bazy Danych Topograficznych (SKBDT) zawód kartografa? Koszalin, 15-16.05.2006 III Zawodowa Konferencja Zawód kartografa 200910151500 Agenda 1. Koncepcja SKBDT 2. Podstawowe założenia koncepcji

Bardziej szczegółowo

WPROWADZENIE DO UML-a

WPROWADZENIE DO UML-a WPROWADZENIE DO UML-a Maciej Patan Instytut Sterowania i Systemów Informatycznych Dlaczego modelujemy... tworzenie metodologii rozwiązywania problemów, eksploracja różnorakich rozwiązań na drodze eksperymentalnej,

Bardziej szczegółowo

Walidacja elementów systemów sterowania związanych z bezpieczeństwem jako krok do zapewnienia bezpieczeństwa użytkowania maszyn

Walidacja elementów systemów sterowania związanych z bezpieczeństwem jako krok do zapewnienia bezpieczeństwa użytkowania maszyn Walidacja elementów systemów sterowania związanych z bezpieczeństwem jako krok do zapewnienia bezpieczeństwa użytkowania maszyn mgr inż. Tomasz Strawiński Zakład Techniki Bezpieczeństwa CIOP - PIB Walidacja

Bardziej szczegółowo

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego Etapy Ŝycia systemu informacyjnego Wprowadzenie do metodologii modelowania systemów informacyjnych 1. Strategia 2. Analiza 3. Projektowanie 4. Implementowanie, testowanie i dokumentowanie 5. WdroŜenie

Bardziej szczegółowo

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA Przygotował: mgr inż. Radosław Adamus Wprowadzenie Podstawą każdego projektu, którego celem jest budowa oprogramowania są wymagania, czyli warunki,

Bardziej szczegółowo

UML w Visual Studio. Michał Ciećwierz

UML w Visual Studio. Michał Ciećwierz UML w Visual Studio Michał Ciećwierz UNIFIED MODELING LANGUAGE (Zunifikowany język modelowania) Pozwala tworzyć wiele systemów (np. informatycznych) Pozwala obrazować, specyfikować, tworzyć i dokumentować

Bardziej szczegółowo

Modelowanie i analiza systemów informatycznych

Modelowanie i analiza systemów informatycznych Modelowanie i analiza systemów informatycznych MBSE/SysML Wykład 11 SYSMOD Wykorzystane materiały Budapest University of Technology and Economics, Department of Measurement and InformaJon Systems: The

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

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

Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC. Jarosław Świerczek

Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC. Jarosław Świerczek Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC Jarosław Świerczek Punkty funkcyjne Punkt funkcyjny to metryka złożoności oprogramowania wyznaczana w oparciu o określające to oprogramowanie

Bardziej szczegółowo

Testowanie i walidacja oprogramowania

Testowanie i walidacja oprogramowania i walidacja oprogramowania Inżynieria oprogramowania, sem.5 cz. 3 Rok akademicki 2010/2011 Dr inż. Wojciech Koziński Zarządzanie testami Cykl życia testów (proces) Planowanie Wykonanie Ocena Dokumentacja

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

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

AKADEMIA GÓRNICZO-HUTNICZA

AKADEMIA GÓRNICZO-HUTNICZA AKADEMIA GÓRNICZO-HUTNICZA Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki KATEDRA INFORMATYKI Event Visualizator sprawozdanie z przebiegu projektu wersja 1.1 z dnia 15.06.2011 Kierunek,

Bardziej szczegółowo

PYTANIA PRÓBNE DO EGZAMINU NA CERTYFIKAT ZAAWANSOWANY REQB KLUCZ ODPOWIEDZI. Część DODATEK

PYTANIA PRÓBNE DO EGZAMINU NA CERTYFIKAT ZAAWANSOWANY REQB KLUCZ ODPOWIEDZI. Część DODATEK KLUCZ ODPOWIEDZI Część DODATEK 8.1 9.4 PYTANIA PRÓBNE DO EGZAMINU NA CERTYFIKAT ZAAWANSOWANY REQB Na podstawie: Syllabus REQB Certified Professional for Requirements Engineering, Advanced Level, Requirements

Bardziej szczegółowo

Wykład 4. Projektowanie. MIS n Inżynieria oprogramowania Październik 2014

Wykład 4. Projektowanie. MIS n Inżynieria oprogramowania Październik 2014 Wykład 4 MIS-1-505-n Inżynieria oprogramowania Październik 2014 Metody Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie 4.1 Agenda 1 2 3 Metody Metody 4 5 4.2 Implementacja Metody

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

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

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym konceptualnym modelem danych jest tzw. model związków encji (ERM

Bardziej szczegółowo

Modelowanie i analiza systemów informatycznych

Modelowanie i analiza systemów informatycznych Katolicki Uniwersytet Lubelski Jana Pawła II Wydział Matematyki, Informatyki i Architektury Krajobrazu Modelowanie i analiza systemów informatycznych ćwiczenia informacja wstępna dr Viktor Melnyk, prof.

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

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka Modelowanie jako sposób opisu rzeczywistości Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka 2015 Wprowadzenie: Modelowanie i symulacja PROBLEM: Podstawowy problem z opisem otaczającej

Bardziej szczegółowo

Matryca efektów kształcenia dla programu studiów podyplomowych ZARZĄDZANIE I SYSTEMY ZARZĄDZANIA JAKOŚCIĄ

Matryca efektów kształcenia dla programu studiów podyplomowych ZARZĄDZANIE I SYSTEMY ZARZĄDZANIA JAKOŚCIĄ Podstawy firmą Marketingowe aspekty jakością Podstawy prawa gospodarczego w SZJ Zarządzanie Jakością (TQM) Zarządzanie logistyczne w SZJ Wymagania norm ISO serii 9000 Dokumentacja w SZJ Metody i Techniki

Bardziej szczegółowo

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Inżynieria oprogramowania, C12

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Inżynieria oprogramowania, C12 KARTA PRZEDMIOTU 1. Informacje ogólne Nazwa przedmiotu i kod (wg planu studiów): Nazwa przedmiotu (j. ang.): Kierunek studiów: Specjalność/specjalizacja: Poziom kształcenia: Profil kształcenia: Forma studiów:

Bardziej szczegółowo

Tom 6 Opis oprogramowania

Tom 6 Opis oprogramowania Część 4 Narzędzie do wyliczania wielkości oraz wartości parametrów stanu Diagnostyka stanu nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 30 maja 2012 Historia dokumentu Nazwa

Bardziej szczegółowo

Maciej Oleksy Zenon Matuszyk

Maciej Oleksy Zenon Matuszyk Maciej Oleksy Zenon Matuszyk Jest to proces związany z wytwarzaniem oprogramowania. Jest on jednym z procesów kontroli jakości oprogramowania. Weryfikacja oprogramowania - testowanie zgodności systemu

Bardziej szczegółowo

Metoda przedwdrożeniowego wymiarowania zmian oprogramowania wybranej klasy systemów ERP

Metoda przedwdrożeniowego wymiarowania zmian oprogramowania wybranej klasy systemów ERP Metoda przedwdrożeniowego wymiarowania zmian oprogramowania wybranej klasy systemów ERP mgr inż. Przemysław Plecka promotor: prof. dr hab. inż. Zbigniew A. Banaszak promotor pomocniczy: dr inż. Krzysztof

Bardziej szczegółowo

Inżynieria oprogramowania. Wykład 6 Analiza i specyfikowanie wymagań

Inżynieria oprogramowania. Wykład 6 Analiza i specyfikowanie wymagań Inżynieria oprogramowania Wykład 6 Analiza i specyfikowanie wymagań Proces inżynierii wymagań Feasibility Study Feasibility Report Requirements Analysis System Models Requirements Definition Definition

Bardziej szczegółowo

Świat rzeczywisty i jego model

Świat rzeczywisty i jego model 2 Świat rzeczywisty i jego model Świat rzeczywisty (dziedzina problemu) Świat obiektów (model dziedziny) Dom Samochód Osoba Modelowanie 3 Byty i obiekty Byt - element świata rzeczywistego (dziedziny problemu),

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Źródło: S. Wrycza, B. Marcinkowski, K. Wyrzykowski Język UML 2.0 w modelowaniu systemów informatycznych Helion DIAGRAMY INTERAKCJI

Źródło: S. Wrycza, B. Marcinkowski, K. Wyrzykowski Język UML 2.0 w modelowaniu systemów informatycznych Helion DIAGRAMY INTERAKCJI DIAGRAMY INTERAKCJI DIAGRAMY STEROWANIA INTERAKCJĄ Diagramy sterowania interakcją dokumentują logiczne związki między fragmentami interakcji. Podstawowe kategorie pojęciowe diagramów sterowania interakcją

Bardziej szczegółowo

Zastosowanie symulacji Monte Carlo do zarządzania ryzykiem przedsięwzięcia z wykorzystaniem metod sieciowych PERT i CPM

Zastosowanie symulacji Monte Carlo do zarządzania ryzykiem przedsięwzięcia z wykorzystaniem metod sieciowych PERT i CPM SZKOŁA GŁÓWNA HANDLOWA w Warszawie STUDIUM MAGISTERSKIE Kierunek: Metody ilościowe w ekonomii i systemy informacyjne Karol Walędzik Nr albumu: 26353 Zastosowanie symulacji Monte Carlo do zarządzania ryzykiem

Bardziej szczegółowo

Model referencyjny doboru narzędzi Open Source dla zarządzania wymaganiami

Model referencyjny doboru narzędzi Open Source dla zarządzania wymaganiami Politechnika Gdańska Wydział Zarządzania i Ekonomii Katedra Zastosowań Informatyki w Zarządzaniu Zakład Zarządzania Technologiami Informatycznymi Model referencyjny Open Source dla dr hab. inż. Cezary

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 3 Diagramy przypadków użycia Diagramy przypadków użycia (ang. use case)

Bardziej szczegółowo

Wstęp. Inżynieria wymagań. Plan wykładu. Wstęp. Wstęp. Wstęp. Schemat procesu pozyskiwania wymagań

Wstęp. Inżynieria wymagań. Plan wykładu. Wstęp. Wstęp. Wstęp. Schemat procesu pozyskiwania wymagań Wstęp Inżynieria wymagań Schemat procesu pozyskiwania wymagań identyfikacja źródeł wymagań Organizacja i Zarządzanie Projektem Informatycznym pozyskiwanie pozyskiwanie pozyskiwanie Jarosław Francik marzec

Bardziej szczegółowo

SVN. 10 października 2011. Instalacja. Wchodzimy na stronę http://tortoisesvn.tigris.org/ i pobieramy aplikację. Rysunek 1: Instalacja - krok 1

SVN. 10 października 2011. Instalacja. Wchodzimy na stronę http://tortoisesvn.tigris.org/ i pobieramy aplikację. Rysunek 1: Instalacja - krok 1 SVN 10 października 2011 Instalacja Wchodzimy na stronę http://tortoisesvn.tigris.org/ i pobieramy aplikację uruchamiany ponownie komputer Rysunek 1: Instalacja - krok 1 Rysunek 2: Instalacja - krok 2

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

PLAN ZARZĄDZANIA WYMAGANIAMI PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU>

PLAN ZARZĄDZANIA WYMAGANIAMI PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU> Załącznik nr 4.4 do Umowy nr 35-ILGW-253-.../20.. z dnia... MINISTERSTWO FINANSÓW DEPARTAMENT INFORMATYKI PLAN ZARZĄDZANIA WYMAGANIAMI PROJEKT WERSJA numer wersji

Bardziej szczegółowo

Podstawy inżynierii oprogramowania

Podstawy inżynierii oprogramowania Podstawy inżynierii oprogramowania Modelowanie. Podstawy notacji UML Aleksander Lamża ZKSB Instytut Informatyki Uniwersytet Śląski w Katowicach aleksander.lamza@us.edu.pl Zawartość Czym jest UML? Wybrane

Bardziej szczegółowo

Analiza i programowanie obiektowe 2016/2017. Wykład 6: Projektowanie obiektowe: diagramy interakcji

Analiza i programowanie obiektowe 2016/2017. Wykład 6: Projektowanie obiektowe: diagramy interakcji Analiza i programowanie obiektowe 2016/2017 Wykład 6: Projektowanie obiektowe: diagramy interakcji Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Przejście

Bardziej szczegółowo

Laboratorium z przedmiotu: Inżynieria Oprogramowania INP

Laboratorium z przedmiotu: Inżynieria Oprogramowania INP Laboratoria 5-7- część 1 Identyfikacja klas reprezentujących logikę biznesową projektowanego oprogramowania, definicja atrybutów i operacji klas oraz związków między klasami - na podstawie analizy scenariuszy

Bardziej szczegółowo

Zmiany w standardzie ISO dr inż. Ilona Błaszczyk Politechnika Łódzka

Zmiany w standardzie ISO dr inż. Ilona Błaszczyk Politechnika Łódzka Zmiany w standardzie ISO 9001 dr inż. Ilona Błaszczyk Politechnika Łódzka 1 W prezentacji przedstawiono zmiany w normie ISO 9001 w oparciu o projekt komitetu. 2 3 4 5 6 Zmiany w zakresie terminów używanych

Bardziej szczegółowo

Wprowadzenie do systemów informacyjnych

Wprowadzenie do systemów informacyjnych Wprowadzenie do systemów informacyjnych Kryteria oceny systemu Podstawowe metody projektowania UEK w Krakowie Ryszard Tadeusiewicz 1 UEK w Krakowie Ryszard Tadeusiewicz 2 Technologia informatyczna dzisiaj

Bardziej szczegółowo

Wprowadzenie do UML, przykład użycia kolizja

Wprowadzenie do UML, przykład użycia kolizja Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2012 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Konfiguracja modelowania w procesie wytwarzania oprogramowania

Konfiguracja modelowania w procesie wytwarzania oprogramowania Konfiguracja modelowania w procesie wytwarzania oprogramowania Anna Bobkowska Materiały pomocnicze do wykładu z Modelowania i Analizy Systemów na Wydziale ETI PG. Ich lektura nie zastępuje obecności na

Bardziej szczegółowo

INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE

INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE Ważne pojęcia (I) Warunek testowy (test condition) to element lub zdarzenie modułu lub systemu, który może być zweryfikowany przez jeden lub więcej przypadków

Bardziej szczegółowo

KARTA OCENY MERYTORYCZNEJ. Kryterium Czy warunek został spełniony? Okres realizacji projektu jest zgodny z okresem wskazanym w regulaminie

KARTA OCENY MERYTORYCZNEJ. Kryterium Czy warunek został spełniony? Okres realizacji projektu jest zgodny z okresem wskazanym w regulaminie KARTA OCENY MERYTORYCZNEJ Część I: Kryteria formalne podlegające weryfikacji na etapie oceny merytorycznej Kryterium Czy warunek został spełniony? Okres realizacji projektu jest zgodny z okresem wskazanym

Bardziej szczegółowo

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie informatycznej. Zadaniem systemu jest rejestracja i przechowywanie

Bardziej szczegółowo

UML cz. II. UML cz. II 1/38

UML cz. II. UML cz. II 1/38 UML cz. II UML cz. II 1/38 UML cz. II 2/38 Klasy Najważniejsze informacje o klasie: różnica pomiędzy klasą a jej instancją (obiektem) na podstawie klasy tworzone są obiekty (instancje klasy) stan obiektu

Bardziej szczegółowo

Summary in Polish. Fatimah Mohammed Furaiji. Application of Multi-Agent Based Simulation in Consumer Behaviour Modeling

Summary in Polish. Fatimah Mohammed Furaiji. Application of Multi-Agent Based Simulation in Consumer Behaviour Modeling Summary in Polish Fatimah Mohammed Furaiji Application of Multi-Agent Based Simulation in Consumer Behaviour Modeling Zastosowanie symulacji wieloagentowej w modelowaniu zachowania konsumentów Streszczenie

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych

Bardziej szczegółowo

Darmowy fragment www.bezkartek.pl

Darmowy fragment www.bezkartek.pl Wszelkie prawa zastrzeżone. Rozpowszechnianie całości lub fragmentów niniejszej publikacji w jakiejkolwiek postaci bez zgody wydawcy zabronione. Autor oraz wydawca dołożyli wszelkich starań aby zawarte

Bardziej szczegółowo

Wykład 8. Testowanie w JEE 5.0 (1) Autor: Zofia Kruczkiewicz. Zofia Kruczkiewicz

Wykład 8. Testowanie w JEE 5.0 (1) Autor: Zofia Kruczkiewicz. Zofia Kruczkiewicz Wykład 8 Testowanie w JEE 5.0 (1) Autor: 1. Rola testowania w tworzeniu oprogramowania Kluczową rolę w powstawaniu oprogramowania stanowi proces usuwania błędów w kolejnych fazach rozwoju oprogramowania

Bardziej szczegółowo

Procesowa specyfikacja systemów IT

Procesowa specyfikacja systemów IT Procesowa specyfikacja systemów IT BOC Group BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Komputerowe Systemy Wspomagania Zarządzania Przedsiębiorstwem Computer Support Systems Enterprise Management Kierunek: Zarządzanie i Inżynieria Produkcji Management and Production Engineering

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

Ćwiczenie ZINTEGROWANE SYSTEMY CYFROWE. Pakiet edukacyjny DefSim Personal. Analiza prądowa IDDQ

Ćwiczenie ZINTEGROWANE SYSTEMY CYFROWE. Pakiet edukacyjny DefSim Personal. Analiza prądowa IDDQ Ćwiczenie 2 ZINTEGROWANE SYSTEMY CYFROWE Pakiet edukacyjny DefSim Personal Analiza prądowa IDDQ K A T E D R A M I K R O E L E K T R O N I K I I T E C H N I K I N F O R M A T Y C Z N Y C H Politechnika

Bardziej szczegółowo

Diagramy UML, przykład problemu kolizji

Diagramy UML, przykład problemu kolizji Bogdan Kreczmer bogdan.kreczmer@pwr.edu.pl Katedra Cybernetyki i Robotyki Wydział Elektroniki Politechnika Wrocławska Kurs: Copyright c 2015 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu

Bardziej szczegółowo

Informatyzacja przedsiębiorstw WYKŁAD

Informatyzacja przedsiębiorstw WYKŁAD Informatyzacja przedsiębiorstw WYKŁAD dr inż. Piotr Zabawa IBM/Rational Certified Consultant pzabawa@pk.edu.pl wersja 0.1.0 07.10.2010 Wykład 1 Modelowanie procesów biznesowych Przypomnienie rodzajów narzędzi

Bardziej szczegółowo

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska Wprowadzenie Modelowanie biznesowe jest stykiem między

Bardziej szczegółowo

KARTA PRZEDMIOTU. 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA. 2) Kod przedmiotu: ROZ-L3-20

KARTA PRZEDMIOTU. 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA. 2) Kod przedmiotu: ROZ-L3-20 Z1-PU7 WYDANIE N2 Strona: 1 z 5 (pieczęć wydziału) KARTA PRZEDMIOTU 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA 3) Karta przedmiotu ważna od roku akademickiego: 2014/2015 2) Kod przedmiotu:

Bardziej szczegółowo

Projektowanie systemów informatycznych. wykład 6

Projektowanie systemów informatycznych. wykład 6 Projektowanie systemów informatycznych wykład 6 Iteracyjno-przyrostowy proces projektowania systemów Metodyka (ang. methodology) tworzenia systemów informatycznych (TSI) stanowi spójny, logicznie uporządkowany

Bardziej szczegółowo

MS Project 2010 w harmonogramowaniu - planowanie zadań, działań, operacji i przedsięwzięć

MS Project 2010 w harmonogramowaniu - planowanie zadań, działań, operacji i przedsięwzięć MS Project 2010 w harmonogramowaniu - planowanie zadań, działań, operacji i przedsięwzięć Opis Czy narzędzia informatyczne są trudne w opanowaniu? My uważamy, że nie - sądzimy, że opanowanie ich obsługi

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

Inżynieria oprogramowania. Jan Magott

Inżynieria oprogramowania. Jan Magott Inżynieria oprogramowania Jan Magott Literatura do języka UML G. Booch, J. Rumbaugh, I. Jacobson, UML przewodnik użytkownika, Seria Inżynieria oprogramowania, WNT, 2001, 2002. M. Fowler, UML w kropelce,

Bardziej szczegółowo

Analiza i projektowanie obiektowe 2016/2017. Wykład 8: Przypisywanie obiektom odpowiedzialności (2)

Analiza i projektowanie obiektowe 2016/2017. Wykład 8: Przypisywanie obiektom odpowiedzialności (2) Analiza i projektowanie obiektowe 2016/2017 Wykład 8: Przypisywanie obiektom odpowiedzialności (2) Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Wzorce

Bardziej szczegółowo

Feature Driven Development

Feature Driven Development Feature Driven Development lekka metodyka tworzenia oprogramowania Kasprzyk Andrzej IS II Wstęp Feature Driven Development (FDD) to metodyka tworzenia oprogramowania, która wspomaga zarządzanie fazami

Bardziej szczegółowo

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej

Bardziej szczegółowo