UML-диаграмма для зависимости между системами
Какая UML-диаграмма лучше всего показывает зависимость между нашей ИТ-системой и другими внешними ИТ-системами?
Например, я хотел бы показать на диаграмме:
- система A получает данные из системы B
- Система B может вызывать некоторые функции из системы A
Я задаюсь вопросом между диаграммой компонентов и диаграммой последовательности.
Как вы думаете?
3 ответа
Компоненты определенно, и зависимости. Зависимость идет не в направлении потока данных, а от компонента, который "знает" другой компонент (вызывает из него что-то, создает объект и т. Д.).
Следующая диаграмма показывает идею.
Распространенной (и очень рекомендуемой) практикой является использование интерфейсов между компонентами и зависимостей каналов через интерфейс. Это позволяет более четкую спецификацию и лучший дизайн (если возможно, конечно).
Диаграмма последовательности может также использоваться для определения конкретного сценария использования, а также рекомендуется. Итак, компоненты для структурных, статических зависимостей и последовательности для динамического поведения.
Ваш вопрос не очень специфичен, так как все диаграммы UML показывают какую-то зависимость или способ получения данных или выполнения вызова, поэтому я не уверен, правильно ли я понял суть вашего вопроса
1. нет такой вещи, как одна лучшая диаграмма UML, чтобы показать все это
Обычно вы моделируете одну систему (+ несколько черных ящиков в окружающей среде) и одну модель UML. В лучшем случае используемый вами инструмент должен поддерживать Model Driven Architecture (MDA) и, возможно, даже исполняемый UML, так что результатом вашего моделирования может быть больше, чем набор "картинок". Он может стать основой исходного кода, образующего основу приложения, или даже продуктом "нажми и запускай модель".
Для того, чтобы предоставить полное или достаточное описание системы, вам, как правило, понадобится больше диаграмм UML, каждая из которых представляет разные точки зрения с акцентом на разные аспекты с разным уровнем детализации (но все они являются частями одной модели).
(Это было трудной частью для меня, чтобы понять)
2. прежде чем решить, какие диаграммы использовать, сделайте несколько бумажных и карандашных прототипов
Очень важно убедиться, какая диаграмма соответствует вашим потребностям, прежде чем вы начнете рисовать ее в привлекательной форме с использованием инструмента. Даже рисование в Enterprise Architect требует некоторого времени, чтобы привыкнуть и сделать это правильно.
Очень хорошее руководство, как делать бумажные и карандашные диаграммы и какие из них использовать, на что и как тратить столько времени, сколько необходимо:
- Agile Modeling - начните здесь
- ...
- Гибкое моделирование - Диаграммы компонентов UML 2: Agile Введение
- Agile Modeling - Руководство по диаграммам последовательности UML 2
- ...
3. Диаграммы последовательности очень просты и полезны для программистов.
Есть даже инструменты, которые могут превратить диаграммы последовательности в код или инструменты, которые могут превратить исходный код в диаграмму последовательности.
- обзор диаграмм последовательности UML обзор графической нотации
- обзор IBM Rational Edge - основы UML: диаграмма последовательности
- учебное пособие Enterprise Architect - 14-минутное видео - Создать диаграмму последовательности
4. диаграммы деятельности являются выразительными и полезными для программистов
- обзор Debenedetti Emanuele, диаграммы деятельности в UML 2.0
- фон Конрад Бок (один из авторов UML), UML 2 Модели действий и действий, Журнал объектных технологий
- UML 2 Модели деятельности и действий
- UML 2: модели действий и действий, часть 2: действия
- UML 2 - модели действий и действий, часть 3: управляющие узлы
- UML 2 - модели действий и действий, часть 4: узлы объектов
- UML 2 - модели действий и действий, часть 5: разделы
- UML 2: модели действий и действий, часть 6: структурированные действия
- руководства по инструменту
- PaceStar UML Diagrammer, Руководство по диаграммам UML - http://www.pacestar.com/uml/udg60.pdf
- Sparx Enterprise Architect, Использование UML, Часть вторая - Диаграмма поведенческого моделирования - http://www.sparxsystems.com.au/downloads/whitepapers/UML_Tutorial_Part_2_Introduction.pdf
- Microsoft Visual Studio, диаграммы действий UML - http://msdn.microsoft.com/en-us/library/vstudio/dd409360.aspx
5. обзорные диаграммы высокого уровня, полезные для программистов и других (не UML)
- постер Модель бизнес-процесса и нотация
ясный, выразительный язык, легкий для понимания ARIS Event-Driven Process Chain (EPC) (мой любимый с тех пор, как я впервые встретил его в 1999 году)
6. = 1 + 2 + ты
сделайте несколько набросков бумаги и карандаша и решите сами, какие диаграммы лучше всего соответствуют вашим потребностям
В дополнение к вашим мыслям и тому, что сказал Алекс, люди обычно используют сочетание того и другого, чтобы сформулировать межсистемные отношения
Советник позволяет повторно использовать компоненты на диаграмме компонентов и диаграмме последовательности, что позволяет обновлять модель с одной диаграммы и отражать изменения на другой. Ниже приведены снимки, показывающие, как два компонента в модели используются на диаграмме компонентов (для структурных отношений) и диаграмме последовательности (для поведенческого потока).