630 likes | 1.2k Views
Метамодель UML. подготовка лекции : В.Л.Павлов vlpavlov@ieee.org контроль качества : О.В.Федоренко ofed@eds-group.dp.ua. Студенческий комплект материалов к занятию. Студенческий комплект материалов к данному занятию состоит из :
E N D
Метамодель UML подготовка лекции: В.Л.Павлов vlpavlov@ieee.org контроль качества: О.В.Федоренко ofed@eds-group.dp.ua
Студенческий комплект материалов к занятию • Студенческий комплект материалов к данному занятию состоит из: • Распечатанной версии данной презентации (handouts по 6 слайдов на странице) • Файл metamodel.smn.yyyy.mm.dd.ppt • Распечатанных материалов к MetaModel Workshop • Файл MetaModelWorkshop.smn.yyyy.mm.dd.doc • Распечатанных диаграмм SPEM • Файл spem.smn.yyyy.mm.dd.ppt • Перед началом занятия студенты должны убедиться в наличии у них полного комплекта материалов Метамодель UML
Структура занятия • MetaModel Workshop • Архитектураметамоделей • Метамодель UML • SPEM
MMW-9 • Вспоминаем UML • Что изображено на рисунке? Метамодель UML
MMW-8 • Вспоминаем UML • Что изображено на рисунке? Метамодель UML
MMW-7 • Вспоминаем UML • Что изображено на рисунке? Метамодель UML
MMW-6 • Вспоминаем UML • Что изображено на рисунке? Метамодель UML
MMW-5 • Вспоминаем UML • Что изображено на рисунке? Метамодель UML
MMW-4 • Вспоминаем UML • Что изображено на рисунке? Метамодель UML
MMW-3 • Вспоминаем UML • Что изображено на рисунке? Метамодель UML
MMW-2 • Вспоминаем UML • Что изображено на рисунке? Метамодель UML
MMW-1 • Вспоминаем UML • В чем отличие агрегации от композиции? • Что такое Rational Rose • Что такое MS Visio • В чем отличие между MS Visio и Rational Rose? Метамодель UML
MetaModelWorkshop • Следуйте инструкциям преподавателя Метамодель UML
Вопросы по материалу предыдущих занятий • Перечислите и кратко охарактеризуйте промежуточные вехи фазы № n (n=1,2,3,4,5) модели процессов MSF • Перечислите и кратко охарактеризуйте основные шаги процесса управления рисками MSF • Перечислите и кратко охарактеризуйте основные шаги процесса управления подготовкой MSF • Как соотносятся MSF и PMBOK? Метамодель UML
Структура занятия • MMW • Архтитектураметамоделей • Метамодель UML • SPEM Метамодель UML
Уровни архитектуры метамоделей Метамодель UML
Четыре уровня архитектуры Метамодель UML
Спецификации OMG в области моделирования • UML – Unified Modeling Language • MOF - Meta-Object Facility • XMI - XML Metadata Interchange • CWM - Common Warehouse Metamodel Метамодель UML
UML – Unified Modeling Language • Унифицированный язык моделирования • Предоставляет множество базовых элементов для моделирования • Содержит гибкий набор средств расширения языка, в т.ч. создания его специализированных версий – профайлов (profiles) • UML Profile for CORBA • UML Profile for Schedulability, Performance and Time • UML Testing Profile • UML Profile for Enterprise Application Integration • Software Process Engineering Metamodel (SPEM) • И др. Метамодель UML
MOF (Meta-Object Facility) • http://www.omg.org/technology/documents/formal/mof.htm • MOF – мета-метамодель • Абстрактный объектно-ориентированный язык для описания метаданных • Содержит минимальный набор элементарных конструктов моделирования: • Classes, which model MOF metaobjects • Associations, which model binary relationships between metaobjects • DataTypes, which model other data (e.g., primitive types, external types, etc.) • Packages, which modularize the models • Обладает свойством самоописательности Метамодель UML
XMI (XML Metadata Interchange) • http://www.omg.org/technology/documents/formal/xmi.htm • Основанная на XML спецификация обмена метаданными • Содержит: • The XML DTD Production Rules for producing XML Document Type Definitions (DTDs) for XMI encoded metadata. XMI DTDs serve as syntax specifications for XMI documents, and allow generic XML tools to be used to compose and validate XMI documents • The XML Document Production Rules for encoding metadata into an XML compatible format. The production rules can be applied in reverse to decode XMI documents and reconstruct the metadata Метамодель UML
CWM (Common Warehouse Metamodel) • http://www.omg.org/technology/documents/formal/cwm.htm • Метамодель, предоставляющая средства для описания хранилищ данных произвольной природы и предназначенная для обеспечения унифицированного механизма их взаимодействия Метамодель UML
Структура занятия • MMW • Архтитектураметамоделей • Метамодель UML • SPEM Метамодель UML
Метамодель UML Метамодель UML описана в Главе 2 (UML Semantics) стандарта UML Метамодель UML
Структура метамодели UML • Foundation • Содержит описание базовых элементов языка, необходимых для построения статических моделей • Model Management • Содержит описание элементов, необходимых для структурирования моделей • Behavioral Elements • Содержит описание базовых элементов языка, необходимых при работе с динамическими составляющими моделей Метамодель UML
Foundation Метамодель UML
Behavior Elements Метамодель UML
Структура занятия • MMW • Архтитектураметамоделей • Метамодель UML • SPEM Метамодель UML
SPEM – метамодель для описания процессов Метамодель UML
Из чего состоит процесс ?упрощенная модель Метамодель UML
Обозначения Метамодель UML
Пример use-case диаграммы Метамодель UML
Структура SPEM Метамодель UML
Структура SPEM • SPEM_Foundation • Подмножество метамодели стандартного UML • SPEM_Extensions • Конструкции, специфичные для Software Process Engineering Метамодель UML
Два примера из SPEM_Foundation::Data_Types Метамодель UML
Важные классы • WorkDefinition • Используется для описания некоторой деятельности, осуществляемой в рамках процесса (некоторой части процесса) • “Кусок работы”, который имеет явные входные и выходные параметры (WorkProducts) • Может содержать в себе другие WorkDefinition, образуя таким образом иерархию вложенных работ • Имеет следующие саб-классы: Activity, Phase, Iteration, Lifecycle • WorkProduct • Любой продукт/артифакт, созданный, задействованный (использованный) либо модифицированный в рамках процесса. Это может быть некоторая информация, документ, модель, исходный код и т.п. • WorkProduct может быть частью другого WorkProduct • WorkProduct может иметь состояния Метамодель UML
Важные классы • ProcessPerformer • Определяет исполнителя для множества WorkDefinitions в процессе. Предназначен для описания тех WorkDefinitions, которые сложно ассоциировать с индивидуальными ProcessRoles • ProcessRole • Подкласс ProcessPerformer-а. Предназначен для описания ролей, ответственных за работу над конкретными WorkProducts и выполнение конкретных Activities Метамодель UML
Важные классы • Activity • Главный саб-класс WorkDefinition • Описывает часть работы, выполняемую индивидуальной ProcessRole • Может состоять из шагов (Step) • Step • Атомарная единица работы • Steps предназначены для структурной декомпозиции Activity Метамодель UML
Теперь сводим все это вместе • См. раздаточные материалы Метамодель UML
Важные классы • ProcessComponent • Внутренне целостная и согласованная часть процесса, предназначенная для дальнейшего использования в качестве “строительного блока” для сборки полноценного процесса • Process • Полноценный самостоятельный процесс, не предназначенный для дальнейшего использования в качестве саб-процесса Метамодель UML
Важный класс • Discipline • Специализация Package, предназначенная для группировки Activities, объединенных некоторой общей “темой” • Например, в RUP-2001 предусмотрено девять дисциплин: • Business Modeling • Requirement Management • Analysis & Design • Implementation • Test • Deployment • Project Management • Configuration and Change Management • Environment Метамодель UML
Важные классы • Iteration • Композитная WorkDefinition, ведущая к достижению некоторой промежуточной цели • Phase • Специализация WorkDefinition, характеризующаяся наличием критериев старта (Precondition)и завершения (Goal) • Фазы имеют заданный временной порядок следования • LifeCycle • Жизненный цикл процесса – последовательность фаз, ведущая к достижению некоторой цели Метамодель UML
Важные классы • Precondition и Goal • Условия начала/завершения выполнения WorkDefinitions • Эти условия формулируются в терминах состояний тех WorkProducts, которые являются параметрами WorkDefinitions • Пример Precondition: • (DesignModel имеет состояние Ready) and (DesignStandards имеет состояние Approved) • Пример Goal: • (ReviewActions имеет состояние Drafted) Метамодель UML