INSTRUKCJA LABORATORIUM Automatyzacja procesów przemysłowych. SysML profil modelu własne stereotypy SysML002 str. 1/11
Tworzenie profilu modelu Profil modelu zawiera zmiany (rozszerzenia) języka modelowania, które mogą być stosowane wewnątrz tego modelu. Można na przykład stworzyć profil, który personalizuje SysML zgodnie z praktykami projektowymi i konwencjami naszej firmy. Załóżmy, że używany przez nas język modelowania ma wspierać określenie celu (mission statement). Rysunek 1: Początek tworzenia profilu modelu Pierwszym krokiem jest utworzenie profilu. W tym celu z menu kontekstowego folderu Models projektu ZabawkowaKatapulta wybieramy New > SysML Model with Topcased (Rysunek 1). Rysunek 2: Podstawowe parametry profilu Podajemy nazwę jako ProfilZabawkowejKatapulty i wybieramy opcje Profile Template, na koniec oczywiście naciskamy Finish (Rysunek 2). W efekcie w nawigatorze zostaje utworzony nowy model, którego diagram powinien zostać automatycznie otwarty w oknie edytora. str. 2/11
Rysunek 3: Metaklasa na diagramie profilu Następnie trzeba wybrać, który istniejący typ obiektu będzie używany dla tej metaklasy. Określeniu Rysunek 4: Wybór typu obiektu dla metaklasy Efekt (na diagramie profilu i we właściwościach metaklasy) pokazuje Rysunek 5. Rysunek 5: Wybrany typ obiektu dla metaklasy Dodanie stereotypu z właściwością Z palety edytora wybieramy stereotyp i umieszczamy go na diagramie. Zmieniamy nazwę stereotypu na przykład na OkreślenieCelu (Rysunek 6). str. 3/11
Rysunek 6: Dodawanie stereotypu do diagramu profilu Kolejnym krokiem jest powiązanie metaklasy z nowym stereotypem. Z palety edytora wybieramy łącznik typu rozszerzenie (Extension) i klikamy na stereotypie a następnie na metaklasie. Powstałe połączenie należy rozumieć jako stereotyp OkreślenieCelu jest rozszerzeniem metaklasy Requirement" (Rysunek 7). Rysunek 7: Stereotyp jako rozszerzenie metaklasy Jedną z najmocniejszych cech stereotypów jest możliwość określania przez nie właściwości (properties). W ten sposób możemy zwiększać ilość i zakres informacji powiązanych z obiektami modelu (wykraczając poza standardowe definicje). W celu dodania właściwości wybieramy z palety edytora Property i klikamy na diagramie na stereotypie OkreślenieCelu. W ten sposób właściwość zostaje dodana do stereotypu. Zmieniamy jej nazwę na Organizacja (Rysunek 8). Stereotyp może zawierać dowolną liczbę własnych właściwości. Rysunek 8: Dodana właściwość stereotypu W zakładce Model palety Properties nowo dodanej właściwości określamy jej typ jako uml::actor (typ Actor definiowany w ramach UML) - Rysunek 9. str. 4/11
Rysunek 9: Określanie typu właściwości stereotypu Efekt naszych działań pokazuje Rysunek 10 Rysunek 10: Właściwość stereotypu z określonym typem Definiowanie profilu Końcowym krokiem przed zamknięciem gotowego profilu jest uruchomienie akcji finalizującej jego definicję. Z menu kontekstowego profilu ProfilZabawkowejKatapulty w panelu Outline wybieramy Define Profile (Rysunek 11). Rysunek 11: Definiowanie profilu str. 5/11
Topcased pyta o uruchomienie tej akcji każdorazowo przy próbie zapisania zmodyfikowanego profilu. Jeżeli profil nie jest kompletny i zapisujemy tylko na wszelki wypadek", wystarczy nacisnąć Cancel. Jednak nawet zdefiniowanie niekompletnego profilu nie powinno być szkodliwe. Profil jest gotowy, zamykamy okno jego edytora. Ładowanie profilu jako zasobu do modelu Profil jest już gotowy, jednak wciąż niedostępny w naszym modelu. Należy go jawnie załadować do tego modelu - otwieramy do edycji model zabawkowej katapulty (plik ModelZabawkowejKatapulty.sysmldi w nawigatorze). W panelu Outline wybieramy główny element modelu i z menu kontekstowego wybieramy Load Resource... (Rysunek 12). Rysunek 12: Ładowanie zasobu do modelu Zasób (profil) znajduje się lokalnie w naszej przestrzeni roboczej, czyli w otwartym oknie dialogowym ładowania zasobów wybieramy Browse Workspace... (Rysunek 13). Wskazujemy ProfilZabawkowejKatapulty.sysmldi i naciskamy OK. Rysunek 13: Wybór lokalnego zasobu do załadowania Od tej chwili nasz profil będzie dostępny na liście dodatkowych zasobów modelu (Rysunek 14). Rysunek 14: Profil jak zasób modelu str. 6/11
Stosowanie profilu w modelu Aby zastosować załadowany profil (dotyczy to wszystkich profili dostępnych w dodatkowychzasobach) należy z menu kontekstowego modelu wybrać opcję Apply Profile (Rysunek 15). Rysunek 15: Stosowanie profilu na modelu W otwartym oknie dialogowym wybieramy ProfilZabawkowejKatapulty z listy po lewej i dodajemy (przycisk Add) do listy po prawej (Rysunek 16). Na koniec zatwierdzamy przez OK. Rysunek 16: Wybór profilu do zastosowania Profil jest teraz dodany na poziomie modelu (Rysunek 17). Jest dostępny w każdym zagnieżdżonym pakiecie wewnątrz modelu. Rysunek 17: Profil widoczny w modelu Istnieje także możliwość dodawania profili do konkretnych pakietów, nie tylko globalnie do całego modelu. str. 7/11
Stosowanie stereotypu Utworzony wcześniej i dodany do modelu profil definiuje stereotyp OkreślenieCelu. Zastosujemy ten stereotyp na istniejącym wymaganiu Opis misji projektu zabawkowej katapulty. Z menu kontekstowego tego wymagania w panelu Outline wybieramy Apply Stereotype (Rysunek 18). Rysunek 18: Stosowanie stereotypu na elemencie modelu W oknie dialogowym wybieramy z listy po lewej ProfilZabawkowejKatapulty::OkreślenieCelu i umieszczamy na liście po prawej. Zatwierdzamy przez OK. Efekt dodatkowego stereotypu na elemencie modelu pokazuje Rysunek 19. Rysunek 19: Element modelu z dodatkowym stereotypem Tworzenie aktora w kontekście Nasz stereotyp OkreślenieCelu definiuje właściwość aktora - Organizacja. Ta wartość pozwoli określać, kto jest właścicielem (od kogo pochodzi) określenie celu. W przypadku projektu zabawkowej katapulty, cele będą definiowane przez nas (dziadka-budowniczego), który chce zbudować katapultę dla wnuka. Potrzebujemy więc dodać do naszego modelu aktora reprezentującego budowniczego, a następnie zidentyfikować tego aktora jako właściciela określenia celu. W panelu Outline odnajdujemy diagram zawierający pakiet Struktura i dodajemy do niego diagram definiowania bloków (Block definition diagram). W oknie edytora powinniśmy zobaczyć nowo dodany diagram (bdd). Dodajemy do niego pakiet i nazywamy nadajemy mu nazwę Kontekst (rezultat pokazuje Rysunek 20). W pakiecie Struktura pojawią się później kolejne pakiety w miarę postępowania analizy systemu. str. 8/11
Rysunek 20: Pakiet Kontekst na diagramie definiowania bloków Dalej do pakietu Kontekst dodajemy kolejny diagram definiowania bloków. Do tego diagramu dodajemy aktora reprezentującego dziadka-budowniczego. Bieżący stan modelu i diagram Rysunek 21: Diagram definiowania bloków kontekstu z aktorem definiowania bloków konteksty przestawia Rysunek 21. Modyfikowanie atrybutu stereotypu Odnajdujemy pakiet Misja i czynniki sukcesu i otwieramy wymaganie Opis misji projektu zabawkowej katapulty (Rysunek 22). Rysunek 22: Określenie misji w strukturze modelu W palecie właściwości wybieramy zakładkę atrybutów stereotypu (Stereotype Attributes) i wybieramy organizację odpowiedzialną za wysunięcie wymagania stanowiącego określenie celu projektu (Rysunek 23). Typ właściwości (atrybutu) stereotypu OkreślenieCelu ustawiliśmy wcześniej jako aktora, więc tylko opcje tego typu pojawią się na liście wyboru (u nas na razie jest tylko Budowniczy. str. 9/11
Rysunek 23: Określanie wartości atrybutu stereotypu Efekt ustawienie wartości atrybutu Organizacja pokazuje Rysunek 24. Rysunek 24: Ustawiona wartość atrybutu stereotypu W Topcased istnieje wprawdzie możliwość wprowadzania zmian do zastosowanego profilu, jednak nie będą one automatycznie odzwierciedlane w profilowanym modelu (lub pakiecie) i jego elementach określonych stereotypami profilu. Profil po zmianach musi zostać od-stosowany" (Unapply Profile) i ponownie zastosowany (Apply Profile) na modelu. Także wszystkie stereotypy muszą zostać ponownie zastosowane. Dlatego lepiej w pełni zaprojektować profil przed jego użyciem. str. 10/11
SysML rozpoczynanie projektu Część zaliczeniowa Dla własnego projektu należy powtórzyć działania wykonane podczas laboratorium na projekcie zabawkowej katapulty. Trzeba określić interesariusza (stakeholder), od którego pochodzi zdefiniowanie celu projektu (mission statement) i odpowiednio określić atrybut (właściwość) tego wymagania. Autor: dr inż. Piotr Wyciślok Strona 11 / 11