Identyfikacja i modelowanie struktur i procesów biologicznych

Podobne dokumenty
Identyfikacja i modelowanie struktur i procesów biologicznych

UML w Visual Studio. Michał Ciećwierz

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

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

Michał Adamczyk. Język UML

Podstawy inżynierii oprogramowania

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

Podstawy programowania III WYKŁAD 4

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

Podstawy języka UML2 w realnych projektach

Modelowanie i analiza systemów informatycznych

Język UML w modelowaniu systemów informatycznych

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

Spis treúci. Księgarnia PWN: Robert A. Maksimchuk, Eric J. Naiburg - UML dla zwykłych śmiertelników. Wstęp Podziękowania...

Modelowanie obiektowe - Ćw. 3.

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

Podstawy modelowania programów Kod przedmiotu

Rysunek 1: Przykłady graficznej prezentacji klas.

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

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

UML. zastosowanie i projektowanie w języku UML

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

MODELOWANIE OBIEKTOWE

Narzędzia CASE dla.net. Łukasz Popiel

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela

Wykład 1 Inżynieria Oprogramowania

Diagramy klas. dr Jarosław Skaruz

Język UML w modelowaniu systemów informatycznych

Modelowanie obiektowe

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 1 Wprowadzenie do narzędzia CASE. Materiały dla nauczyciela

PRZEWODNIK PO PRZEDMIOCIE

Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego

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

Język UML w modelowaniu systemów informatycznych

Analiza biznesowa a metody agile owe

Laboratorium 6 DIAGRAM KLAS (Class Diagram)

ZARZĄDZANIU. Wykład VI. dr Jan Kazimirski

STANDARD UML 2.3 W ZARZĄDZANIU WYTWARZANIEM OPROGRAMOWANIA

Podstawy projektowania systemów komputerowych

UML cz. III. UML cz. III 1/36

PRZEWODNIK PO PRZEDMIOCIE

Diagramy klas. WYKŁAD Piotr Ciskowski

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

Podstawy języka UML UML

Diagramy przypadków użycia

TECHNOLOGIE OBIEKTOWE. Wykład 3

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

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

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

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

INŻYNIERIA OPROGRAMOWANIA. laboratorium

Informatyczne fundamenty

MiASI. Modelowanie systemów biznesowych. Piotr Fulmański. 7 stycznia Wydział Matematyki i Informatyki, Uniwersytet Łódzki, Polska

Narzędzia Informatyki w biznesie

Podstawy modelowania w języku UML

Język UML w modelowaniu systemów informatycznych

MODELOWANIE STRUKTURY

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

Zarządzanie firmą Celem specjalności jest

Podstawy języka UML2 w realnych projektach

Diagram klas UML jest statycznym diagramem, przedstawiającym strukturę aplikacji bądź systemu w paradygmacie programowania obiektowego.

PRZEWODNIK PO PRZEDMIOCIE

UML cz. I. UML cz. I 1/1

UML (Unified Modeling Language jest to sposób formalnego opisu modeli reprezentujących projekty informatyczne.

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Inżynieria oprogramowania

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

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

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

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

Inżynieria oprogramowania. Część 5: UML Diagramy klas

Wymiar poziomy: oś na której umieszczono instancje klasyfikatorów biorące udział w interakcji.

Opis. Liczba godzin zajęć dydaktycznych z

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych

Inżynieria oprogramowania

Inżynieria oprogramowania Wprowadzenie. WYKŁAD Piotr Ciskowski

Laboratorium z przedmiotu: Inżynieria Oprogramowania INP

WPROWADZENIE DO UML-a

Diagramy przypadków użycia. WYKŁAD Piotr Ciskowski

Język UML w modelowaniu systemów informatycznych

Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego

Modelowanie i analiza systemów informatycznych Spis treści

UML. dr inż. Marcin Pietroo

Język JAVA podstawy. Wykład 4, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Specyfikowanie wymagań przypadki użycia

Instrukcja 3 Laboratoria 3, 4 Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia

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

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla studentów

Wprowadzenie do UML Rodzaje diagramów Przeglad oprogramowania Zadania Rozwiazania zadań Bibliografia. Warsaw Dziobax

Projektowanie i wdrażanie systemów informatycznych (materiały do wykładu cz. II)

Tutorial prowadzi przez kolejne etapy tworzenia projektu począwszy od zdefiniowania przypadków użycia, a skończywszy na konfiguracji i uruchomieniu.

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.

1 Projektowanie systemu informatycznego

Zeszyty Naukowe UNIWERSYTETU PRZYRODNICZO-HUMANISTYCZNEGO w SIEDLCACH Seria: Administracja i Zarządzanie Nr

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych

MODELOWANIE SYSTEMU OCENY WARUNKÓW PRACY OPERATORÓW STEROWNI

Informatyzacja przedsiębiorstw WYKŁAD

Transkrypt:

Identyfikacja i modelowanie struktur i procesów biologicznych Laboratorium 2: Wprowadzenie do UML-a. mgr inż. Urszula Smyczyńska AGH Akademia Górniczo-Hutnicza 1. Cel zajęć Celem zajęć jest zapoznanie z podstawami modelowania systemów w języku UML, ze szczególnym uwzględnieniem jego zastosowań związanych z medycyną i inżynierią biomedyczną. 2. Wstęp UML (ang. Unified Modelling Language), zunifikowany język modelowania, służy do graficznego modelowania różnorodnych systemów i procesów. UML został zaprojektowany około połowy lat 90. XX wieku jako narzędzie do modelowania systemów informatycznych. Pierwotnie miał służyć przede wszystkim do usprawnienia komunikacji w zespołach zajmujących się projektowaniem i produkcją oprogramowania. Było to wówczas istotne, ponieważ systemy (najczęściej budowane w oparciu o techniki programowania obiektowego) stawały się bardzo złożone, a ich twórcy posługiwali się bardzo różnymi metodami opisu, co w praktyce często uniemożliwiało sprawny przepływ informacji. Istnienie jednolitej notacji, znanej niemal wszystkim osobom zaangażowanym w produkcję systemów informatycznych, miało ułatwić m.in. uzyskanie porozumienia między klientem a dostawcą oprogramowania, przepływ informacji między członkami zespołu twórców oprogramowania (np. kierownikiem projektu, analitykami i programistami) oraz szybkie wprowadzenie nowych członków zespołu w pracę nad projektem. Modelowanie systemu w UML-u polega na graficznym przedstawieniu jego funkcjonalności, stawianych mu wymagań i działania w określonych okolicznościach. Proces ten jest praktycznie niezależny od technologii informatycznej, w jakiej system będzie później realizowany. Dzięki temu okazało się, że UML może być z powodzeniem stosowany nie tylko w modelowaniu systemów informatycznych i programów komputerowych, ale też innych procesów i struktur, np. działania systemów biznesowych czy przedsiębiorstw, baz danych, a nawet procedur medycznych. Mimo, że nauki biomedyczne nie są najbardziej typowym obszarem zastosowania modelowania w UML-u, to istnieją przykłady jego skutecznego użycia również w tych dziedzinach. 1

3. Diagramy UML Notacja UML zakłada, że opis systemu będzie składał się z szeregu powiązanych diagramów, budowanych w oparciu o zunifikowaną notację. Diagramy dostępne w UML-u zwykle dzieli się na 2 kategorie: diagramy zachowań (dynamiczne), prezentujące działanie systemu oraz diagramy struktur (statyczne), odwzorowujące budowę systemu. Do diagramów zachowań zalicza się w UML 2.4.1 (najczęściej używane zaznaczone na czerwono): 1. Diagram przypadków użycia (ang. use case diagram) 2. Diagram aktywności, czynności (ang. activity diagram) 3. Diagram maszyny stanów (ang. state machine diagram) 4. Diagramy interakcji (ang. interaction diagram): Diagram komunikacji (ang. communication diagram) Diagram sekwencji (ang. sequence diagram) Diagram czasowy (ang. timing diagram) Diagram przeglądu interakcji (ang. interaction overview diagram) Do diagramów struktur w UML 2.4.1 zaliczmy: 1. Diagram klas (ang. class diagram) 2. Diagram obiektów (ang. object diagram) 3. Diagram komponentów (ang. component diagram) 4. Diagram wdrożenia (ang. deployment diagram) 5. Diagram struktur złożonych (ang. composite structure diagram) 6. Diagram pakietów (ang. package diagram) 7. Diagram profili (ang. profile diagram) Klasyfikacja diagramów może być również zaprezentowana graficznie, co jest widoczne na poniższym rysunku, będącym jednocześnie pierwszym przykładem użycia notacji UML, a konkretnie diagramu klas. Diagram Diagram zachowań Diagram struktur Diagram przypadków użycia Diagram aktywności Diagram klas Diagram obiektów Diagram pakietów Diagram profili Diagram interakcji Diagram maszyny stanów Diagram komponentów Diagram struktur złożonych Diagram wdrożenia Diagram sekwencji Diagram czasowy Diagram komunikacji Diagram przeglądu interakcji Typy diagramów UML; przetłumaczony schemat z [5] 2

3.1. Diagram aktywności (czynności) Diagramy aktywności służą do prezentowania sekwencji czynności składających się na modelowany proces. Szczególnie ważna jest tu kolejność wykonywania czynności. W diagramach aktywności wykorzystujemy m.in. następujące elementy: Stan początkowy początek opisywanego procesu. Stan końcowy koniec procesu. Stany akcji kolejne wykonywane czynności. Węzeł decyzyjny możliwość wyboru jednej z kilku alternatywnych sekwencji zdarzeń. Punkty synchronizacji rozdzielanie i łączenie równoległych przepływów czynności. 3

Przykład 3.1: Organizacja konsultacji chirurgicznej Diagram aktywności dla konsultacji chirurgicznej pacjenta, źródło: [4] 4

3.2. Diagram przypadków użycia Diagram przypadków użycia służy do zobrazowania działania modelowanego systemu, a w szczególności sytuacji, w których może on być stosowany. Elementami diagramów przypadków użycia są m.in.: Aktorzy osoby (aktor osobowy), urządzenia lub programy (aktorzy nieosobowi), które wchodzą w interakcję z modelowanym systemem oraz inicjują jego działanie. Przypadki użycia sytuacje, w których używany jest system. Przy konstruowaniu przypadków użycia stosujemy zasadę, że opisane ma być co się dzieje?, a nie jak ma się to stać?. Związki powiązania między elementami modelu: Asocjacja połączenie aktora z przypadkiem użycia, z którego może korzystać. Zawieranie związek oznaczający, że jeden przypadek zawiera inny. Poniższy diagram czytamy zgodnie z kierunkiem strzałki, czyli Przypadek użycia 1 zawiera Przypadek użycia 2. Rozszerzanie związek, służący do opisania opcjonalnych działań, które mogą, ale nie muszą być elementem konkretnego przypadku użycia. Również czytamy zgodnie z kierunkiem strzałki, czyli poniżej mamy Przypadek użycia 2 rozszerza Przypadek użycia 1. 5

Przykład 3.2: system do zdalnego wykonywania badań USG Diagram przypadków użycia dla robotycznego systemu badań USG, z [3] 6

3.3. Diagram klas Diagramy klas są używane do opisywania elementów składowych systemu, w szczególności klas w programowaniu obiektowym. Podstawowymi elementami diagramu klas są: Klasy elementy systemu. Opis klasy składa się z nazwy, atrybutów (cech) i metod (funkcji), przy czym dwa ostatnie elementy mogą zostać pominięte. Związki powiązania między klasami: Generalizacja (dziedziczenie) związek oznaczający, że klasa pochodna posiada wszystkie cechy i funkcje klasy bazowej oraz inne dodatkowe. Strzałki na diagramach skierowane są od klasy pochodnej do bazowej, czyli na poniższym rysunku Klasa 2 dziedziczy po Klasie 1. Agregacja opisuje relacje typu część-całość, przy czym poszczególne części mogą funkcjonować również niezależnie, bez łączenia w całość. Kompozycja relacja podobna do agregacji, z tym, że części składowe nie są niezależne. Poniżej: Klasa 1 składa się z Klasy 2 i Klasy 3. 7

Zależność powiązanie oznaczające, że zmiana jednej z jego stron powoduje zmianę w drugiej. Asocjacja dowolne, inne, trwałe powiązanie. Może być skierowanie linia ze strzałką lub nie. Przykład 3.3: Schemat organizacyjny szpitala Struktura organizacyjna szpitala w formie diagramu klas, źródło: [1] 8

3.4. Diagram sekwencji Diagramy sekwencji używane są do modelowania komunikacji między poszczególnymi elementami systemu i jego otoczenia. Na tym diagramie czynności przedstawia się zawsze w kolejności chronologicznej z początkiem procesu u góry. Podstawowymi częściami diagramu sekwencji są: Linie życia obiektów (uczestników) służą do zaznaczania, jakie obiekty biorą udział w procesie, kiedy wykonują działania i jak się ze sobą komunikują. U góry linii w prostokącie wpisuje są nazwę obiektu. W dół od prostokąta biegnie przerywana oś czasu, której pogrubione fragmenty oznaczają okresy, gdy obiekt jest aktywny. Komunikat wysłanie komunikatu oznacza się strzałką, skierowaną od obiektu wysyłającego do adresata; nad strzałką dodaje się opis komunikatu. Odpowiedź na komunikat oznaczana strzałką przerywaną. 9

Przykład 3.4: Wyszukiwanie danych pacjenta w systemie informatycznym Diagram sekwencji dla wyszukiwania informacji o pacjencie w bazie danych, źródło: [2] 10

3.5. Diagram maszyny stanów Diagram maszyny stanów budujemy z następujących elementów: stan początkowy początek modelowanego procesu. stan końcowy koniec modelowano procesu. Może być kilka stanów końcowych. stan dowolny pośredni stan systemu, złożony z pewnych czynności i/lub oczekiwania na zaistnienie określonego zdarzenia. przejście między stanami wskazuje, jakie stany mogą następować bezpośrednio po sobie i jakie są warunki przejścia między nimi. Przykład 3.5: Użycie sprzętu chirurgicznego Diagram stanów narzędzi chirurgicznych 11

4. Przykłady oprogramowania Diagramy UML można tworzyć m.in. w następujących programach: 1. Violet UML Editor prosty program, który będzie używany podczas zajęć. Umożliwia tworzenie tylko niektórych typów diagramów. alexdp.free.fr/violetumleditor/page.php/ 2. Microsoft Visio program rozbudowany, przeznaczony do przygotowywania różnych schematów. Odpłaty, ale dla uczelni może być dostępny przez platformę w programie MSDN DreamSpark. Pozwala narysować większość diagramów UML 3. Visual Paradigm for UML również rozbudowane, profesjonalne narzędzie. W pełnej wersji do zastosowań komercyjnych, ale istnieje też wersja Community Edition bezpłatna do zastosowań niekomercyjnych, ale na diagramach pojawia się znak wodny firmy. Nadaje się do tworzenia wszystkich diagramów UML. www.visual-paradigm.com/solution/freeumltool/ Szersza lista narzędzi UML jest dostępna w Wikipedii. Ponadto istnieją również narzędzia umożliwiające generowanie diagramów UML z kodu programu lub odwrotnie kodu na podstawie diagramów. 5. Literatura 1. www.uml-diagrams.org. 2. Shi, S., Xiong, S.: Analysis and design of clinical information management system based on UML of AIDS of traditional chinese medicine. National Conference on Information Technology and Computer Science, CITCS 2012. ss. 119 123. Atlantis Press (2012). 3. Guiochet, J., Tondu, B., Baron, C.: Integration of UML in human factors analysis for safety of a medical robot for tele-echography. Proceedings of the 2003 of the IEEE/RSJ International Conference on Intelligent Robots and Systems. ss. 3212 3217. IEEE, Las Vegas, Nevada (2003). 4. Sobolev, B., Sanchez, V., Kuramoto, L.: Health Care Evaluation Using Computer Simulation. Springer (2012). 5. Object Managment Group: UML 2.4.1 Superstructure Specification. (2011). 12