Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Uml Book (Rus).doc
Скачиваний:
15
Добавлен:
11.08.2019
Размер:
58.74 Mб
Скачать

Глава 7. Диаграммы

В процессе моделирования человек упрощает реальность, чтобы лучше попять проектируемую систему (см. главу 1). Используя UML, вы можете строить моде­ли из базовых блоков, таких как классы, интерфейсы, кооперации, компоненты, узлы, зависимости, обобщения и ассоциации. Диаграммы позволяют обозревать эти строительные блоки в удобной для понимания форме

Диаграмма - это графическое представление совокупности элементов, чаще всего изображаемое в виде связного графа, состоящего из вершин (сущностей) и ребер (отношений). С помощью диаграмм можно визуализировать систему с различных точек зрения. Поскольку сложное целое нельзя понять, глядя на него лишь с одной стороны, в UML определено много разных диаграмм, которые позволяют сосредоточиться на различных аспектах моделируемой системы.

Хорошие диаграммы облегчают понимание модели. Продуманный выбор диа­грамм при моделировании системы позволяет задавать правильные вопросы о ней, помогает грамотной постановке задачи и проясняет последствия принимаемых ре­шений.

Введение

Работая с архитектором, проектирующим ваш дом, вы, во-первых, составляете список пожеланий (например, «я хочу, чтобы в доме было три спальни» или «я хочу, чтобы постройка обошлась мне не дороже такой-то суммы»); во-вторых, подби­раете несколько эскизов или фотографий других домов, где представлены их важнейшие особенности (например, фотография крыльца с винтовой лестницей); в-третьих, формулируете некую общую идею («это будет французский сельский дом с элементами стиля, распространенного на калифорнийском побе­режье»). Задача архитектора заключается в том, чтобы на основе этих неполных, по­стоянно меняющихся и, возможно, противоречивых требований создать завершен­ный проект.

Начать, вероятно, придется с основных поэтажных планов. Оформив их, вы вме­сте с архитектором сможете представить себе окончательный вид дома, уточнить детали и документировать решения. При каждом пересмотре проекта может возник­нуть желание внести какие-то изменения, например передвинуть стены, перепла­нировать комнаты или по-новому расположить окна и двери. На ранних стадиях чертежи будут меняться часто. По мере того как проект совершенствуется и вы на­конец осознаете, что он наилучшим образом удовлетворяет всем требованиям по внешнему виду, функциональности, срокам и смете строительства, чертежи оформ­ляются настолько четко, что их уже можно использовать для возведения дома.

Однако даже в процессе строительства вы еще, вероятно, пожелаете изменить не­которые элементы и привнести нечто новое.

По ходу работы вам захочется увидеть не только поэтажный план, но и другие представления вашего дома - например, вертикальные разрезы с разных сторон. Конкретизируя детали и при этом не упуская из виду, что стоимость работ долж­на оставаться в разумных пределах, архитектору придется начертить схемы элек­тропроводки, систем отопления и вентиляции, водоснабжения и канализации. Если в вашем проекте есть какие-то необычные черты (например, большие ароч­ные пролеты) или существенные для вас особенности (скажем, камин требуется расположить так, чтобы рядом с ним можно было разместить домашний киноте­атр), то вам совместно с архитектором придется подробно проработать их на отдельных чертежах.

Практика создания чертежей для визуализации системы с различных точек зре­ния не ограничивается строительством. Вы встретите ее в любой инженерной дис­циплине, связанной с разработкой сложных систем, от производства бытовой тех­ники до авиа- и кораблестроения и, наконец, создания программного обеспечения.

Существует пять взаимно дополняющих друг друга видов, или представлений, особенно важных для визуализации, специфицирования, конструирования и до­кументирования программной архитектуры: это представления с точки зрения прецедентов, проектирования, процессов, реализации и развертывания (см. главу 2). Каждое из них предполагает структурное и поведенческое моделирование (то есть моделирование статических и динамических сущностей соответственно). В своей совокупности эти виды позволяют передать наиболее важные решения, касающие­ся системы в целом, а по отдельности каждый из них акцентирует внимание на од­ном ее аспекте, рассмотрение которого таким образом упрощается.

Чтобы изобразить систему с какой-либо точки зрения средствами UML, для организации представляющих интерес элементов используются диаграммы. В UML определено девять типов диаграмм, которые позволено комбинировать для созда­ния нужного вида. Например, статические аспекты вида с точки зрения реализации системы удобнее визуализировать с помощью диаграмм компонентов, а динамичес­кие аспекты того же вида - с помощью диаграмм взаимодействия. Статические аспекты системной базы данных можно изобразить с помощью диаграмм клас­сов, а динамические - с помощью диаграмм кооперации. (Моделирование архитек­туры системы рассматривается в главе 31.)

Конечно, вы не ограничены только этими девятью типами диаграмм. Они опре­делены в UML только потому, что позволяют представить наиболее часто встреча­ющиеся комбинации рассматриваемых элементов. Но можно создавать и собствен­ные виды диаграмм, если это потребуется для вашего проекта или организации.

Диаграммы UML можно использовать двумя способами: для описания моде­лей, на основе которых в дальнейшем будет сконструирована исполняемая систе­ма (прямое проектирование), или для воссоздания модели из частей уже суще­ствующей исполняемой системы (обратное проектирование). В любом случае вы, как и архитектор, будете разрабатывать диаграммы инкрементно (добавляя по од­ному новому фрагменту за раз) и итеративно (повторяя процесс проектирования после каждого нового усовершенствования). Удовлетворяющий обоим этим тре­бованиям процесс проектирования описан в «Приложении С».

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]