Как и любой другой язык, UML характеризуется набором правил, определяющих, как должна выглядеть хорошо оформленная модель, то есть семантически согласованная и находящаяся в гармонии со всеми моделями, которые с нею связаны.
UML включает семантические правила, позволяющие корректно и однозначно определять:
- имена, которые можно давать предметам, отношениям и диаграммам;
- область действия (контекст, в котором имя имеет некоторое значение);
- видимость (когда имена видимы и могут использоваться другими элементами);
- целостность (как элементы должны правильно и согласованно соотноситься друг с другом);
- выполнение (что значит выполнить или имитировать некоторую динамическую модель).
Модели, создаваемые в процессе разработки программных систем, эволюционируют со временем и могут неоднозначно рассматриваться разными участниками проекта в разное время. По этой причине создаются не только хорошо оформленные модели, но и такие, которые:
- содержат скрытые элементы (ряд элементов не показывают, чтобы упростить восприятие);
- неполные (отдельные элементы пропущены);
- несогласованные (целостность модели не гарантируется).
Появление не слишком хорошо оформленных моделей неизбежно в процессе разработки, пока не все детали системы прояснились в полной мере. Правила языка UML побуждают, хотя не и требуют, чтобы в ходе работы над моделью решались наиболее важные вопросы анализа, проектирования и реализации, в результате чего модель со временем становится хорошо оформленной.
|
|
Общие механизмы языка UML
Очевидно, что процесс проектирования упрощается и ведется более эффективно, если придерживаться некоторых соглашений. В этом смысле работа с UML существенно упрощается благодаря наличию четырех постоянно применяемых общих механизмов:
- спецификации (Specifications);
- дополнения (Adornments);
- принятые разделения (Common divisions);
- механизмы расширения (Extensibility mechanisms).