Jestem trochę zdezorientowany, w jaki sposób model widoku architektonicznego 4 + 1 mapuje się na UML.
Wikipedia podaje następujące mapowanie:
- Widok logiczny: schemat klasy, schemat komunikacji, schemat sekwencji.
- Widok rozwoju: schemat komponentów, schemat pakietów
- Widok procesu: Diagram aktywności
- Widok fizyczny: schemat rozmieszczenia
- Scenariusze: schemat przypadków użycia
Papierowa rola konstrukcji diagramu sekwencji UML w koncepcji cyklu życia obiektu daje następujące mapowanie:
- Widok logiczny (schemat klasy (CD), schemat obiektów (OD), schemat sekwencji (SD), schemat współpracy (COD), schemat wykresu stanu (SCD), schemat aktywności (AD))
- Widok programowania (schemat pakietu, schemat komponentu),
- Widok procesu (schemat przypadków użycia, CD, OD, SD, COD, SCD, AD),
- Widok fizyczny (schemat wdrażania) oraz
- Widok przypadku użycia (schemat przypadku użycia, OD, SD, COD, SCD, AD), który łączy cztery wymienione powyżej.
Strona internetowa UML 4 + 1 Wyświetl materiały przedstawia następujące mapowanie:
Wreszcie, biała księga Zastosowanie architektury widoku 4 + 1 z UML 2 daje jeszcze jedno mapowanie:
- Logiczne diagramy klas widoków, diagramy obiektów, wykresy stanów i struktury złożone
- Diagramy sekwencji widoków procesu , diagramy komunikacji, diagramy aktywności, diagramy czasowe, diagramy przeglądu interakcji
- Diagramy komponentów widoku rozwoju
- Schemat rozmieszczenia widoku fizycznego
- Widok przypadku użycia schemat użycia przypadku, diagramy aktywności
Jestem pewien, że dalsze wyszukiwanie ujawni również inne mapowania.
Podczas gdy różni ludzie zwykle mają różne perspektywy, nie rozumiem, dlaczego tak jest w tym przypadku. W szczególności każdy diagram UML opisuje system z określonego aspektu. Na przykład dlaczego „schemat sekwencji” jest uważany za opisujący „logiczny widok” systemu przez jednego autora, podczas gdy inny autor uważa go za opisujący „widok procesu”?
Czy możesz mi pomóc wyjaśnić zamieszanie?
The logical view is designed to address the end user's concerns about ensuring that all of their desired functionality is captured by the system. In an object-oriented system, this is often at the class level
. Czy nie uważasz, że jeśli chcemy coś zrobić dla użytkowników końcowych, musimy przynajmniej się z nimi porozumieć i mówić jednym językiem. Spróbuj pokazać diagram klas swoim użytkownikom i zobaczmy, co powiedzą.