Jak uwzględnić warunki w diagramach sekwencji UML?

13

Lubię rysować schemat sekwencji UML, aby wyświetlić sekwencję działań i interakcji różnych części mojego systemu (myślę, że nazywają się aktorami).

Muszę jednak dołączyć if then elsetutaj stwierdzenia. Czy robię coś złego? Czy mogę używać warunkowych instrukcji if na moim schemacie sekwencji UML? W jaki sposób?

Saeed Neamati
źródło

Odpowiedzi:

18

Podobnie jak w wielu typach diagramów UML, możesz użyć strażników do oznaczenia stanu. Strażnik to wyrażenie boolowskie, które można zapisać po przejściu.

Oto zdjęcie z przykładem: wprowadź opis zdjęcia tutaj

Zwróć uwagę na warunek „[pastDueBalance = 0]”.

Możesz także użyć połączonych fragmentów dla bardziej skomplikowanej logiki warunkowej. Aby uzyskać więcej informacji, zobacz ten miły artykuł msdn .

Sokół
źródło
4

Są cztery możliwości, o których wiem (ze wzrostem mocy):

  1. Najłatwiej jest po prostu użyć strażników , które są prostymi, pozbawionymi efektów ubocznych wyrażeniami logicznymi.
  2. Dzięki połączonym fragmentom (patrz np. Strona 54) można grupować zestawy komunikatów, aby pokazać przepływ warunkowy na schemacie sekwencji (alternatywy, opcje, pętle)
  3. Znacznie silniejszy jest Object Constraint Language (OCL) , który może dodatkowo kwantyfikować (dla wszystkich, istnieje) i oferuje w pełni rozwinięty (DesignBy-) język kontraktów (który jest prawie tak wyrazisty jak logika pierwszego rzędu).
  4. Najpotężniejszym sposobem jest wyrażenie ograniczenia przy użyciu języka akcji UML z wykonywalnego UML (xUML), który jest zgodny z semantyką działania UML.

Mój wybór byłby najmniej skuteczny, który wciąż jest wystarczająco wyraźny, by zrobić to, co chcesz zrobić. Na przykład działania w 4. mogą mieć skutki uboczne, co czyni je znacznie bardziej kruchymi niż OCL.

DaveFar
źródło
2

Chociaż diagramy sekwencji są idealne do opisu, sprawdź diagramy aktywności.

Kiedy chcesz pokazać szczegóły wewnętrzne (w tym szczegółowe zasady), diagramy aktywności są tym, czego chcesz użyć. Proste diagramy aktywności skupiają się na sekwencji działań i regułach i słabo pokazują obowiązki aktora, niemniej jednak można użyć torów pływania, aby podświetlić obowiązki poszczególnych aktorów. Każda linia zawiera działania, za które odpowiada aktor.

Te linki omawiają diagramy aktywności z torami pływania:

Bez szans
źródło