Transcript Метамодель UML и SPEM
Метамодель UML
подготовка лекции: контроль качества: В.Л.Павлов [email protected]
О.В.Федоренко [email protected]
Студенческий комплект материалов к занятию
Студенческий комплект материалов к данному занятию состоит из: • Распечатанной версии данной презентации (handouts по 6 слайдов на странице) • • • Файл metamodel.smn.yyyy.mm.dd.ppt
• Распечатанных материалов к MetaModel Workshop Файл MetaModelWorkshop.smn.yyyy.mm.dd.doc
• Распечатанных диаграмм SPEM Файл spem.smn.yyyy.mm.dd.ppt
Перед началом занятия студенты должны убедиться в наличии у них полного комплекта материалов Курс SE MSF.NET
Метамодель UML 2
Структура занятия
1) 2) 3) 4) MetaModel Workshop Архитектура метамоделей Метамодель UML SPEM
MMW-9
Вспоминаем UML Что изображено на рисунке?
Курс SE MSF.NET
Метамодель UML 4
MMW-8
Вспоминаем UML Что изображено на рисунке?
Курс SE MSF.NET
Метамодель UML 5
MMW-7
Вспоминаем UML Что изображено на рисунке?
Курс SE MSF.NET
Метамодель UML 6
MMW-6
Вспоминаем UML Что изображено на рисунке?
Курс SE MSF.NET
Метамодель UML 7
MMW-5
Вспоминаем UML Что изображено на рисунке?
Курс SE MSF.NET
Метамодель UML 8
MMW-4
Вспоминаем UML Что изображено на рисунке?
Курс SE MSF.NET
Метамодель UML 9
MMW-3
Вспоминаем UML Что изображено на рисунке?
Курс SE MSF.NET
Метамодель UML 10
MMW-2
Вспоминаем UML Что изображено на рисунке?
Курс SE MSF.NET
Метамодель UML 11
MMW-1
Вспоминаем UML В чем отличие агрегации от композиции?
Что такое Rational Rose Что такое MS Visio В чем отличие между MS Visio и Rational Rose?
Курс SE MSF.NET
Метамодель UML 12
MetaModel Workshop
Следуйте инструкциям преподавателя
Курс SE MSF.NET
Метамодель UML 13
Вопросы по материалу предыдущих занятий
Перечислите и кратко охарактеризуйте промежуточные вехи фазы № n (n=1,2,3,4,5) модели процессов MSF Перечислите и кратко охарактеризуйте основные шаги процесса управления рисками MSF Перечислите и кратко охарактеризуйте основные шаги процесса управления подготовкой MSF Как соотносятся MSF и PMBOK?
Курс SE MSF.NET
Метамодель UML 14
Структура занятия
1) 2) 3) 4) MMW Архтитектура метамоделей Метамодель UML SPEM Курс SE MSF.NET
Метамодель UML 15
Уровни архитектуры метамоделей
Курс SE MSF.NET
Метамодель UML 16
Четыре уровня архитектуры
Курс SE MSF.NET
Метамодель UML 17
Курс SE MSF.NET
Метамодель UML 18
Спецификации OMG в области моделирования
UML – Unified Modeling Language MOF - Meta-Object Facility XMI - XML Metadata Interchange CWM - Common Warehouse Metamodel Курс SE MSF.NET
Метамодель UML 19
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) • И др.
Курс SE MSF.NET
Метамодель UML 20
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 Обладает свойством самоописательности Курс SE MSF.NET
Метамодель UML 21
XMI (XML Metadata Interchange)
http://www.omg.org/technology /documents/formal/xmi.htm
Основанная на XML спецификация обмена метаданными Содержит: 1.
2.
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 Курс SE MSF.NET
Метамодель UML 22
CWM (Common Warehouse Metamodel)
http://www.omg.org/technology /documents/formal/cwm.htm
Метамодель, предоставляющая средства для описания хранилищ данных произвольной природы и предназначенная для обеспечения унифицированного механизма их взаимодействия Курс SE MSF.NET
Метамодель UML 23
Курс SE MSF.NET
Метамодель UML 24
Структура занятия
1) 2) 3) 4) MMW Архтитектура метамоделей Метамодель UML SPEM Курс SE MSF.NET
Метамодель UML 25
Метамодель UML
Метамодель UML описана в Главе 2 (UML Semantics) стандарта UML Курс SE MSF.NET
Метамодель UML 26
Структура метамодели UML
Foundation • Содержит описание базовых элементов языка, необходимых для построения статических моделей Model Management • Содержит описание элементов, необходимых для структурирования моделей Behavioral Elements • Содержит описание базовых элементов языка, необходимых при работе с динамическими составляющими моделей Курс SE MSF.NET
Метамодель UML 27
Foundation
Курс SE MSF.NET
Метамодель UML 28
Behavior Elements
Курс SE MSF.NET
Метамодель UML 29
Структура занятия
1) 2) 3) 4) MMW Архтитектура метамоделей Метамодель UML SPEM Курс SE MSF.NET
Метамодель UML 30
SPEM – метамодель для описания процессов
Курс SE MSF.NET
Метамодель UML 31
Из чего состоит процесс ?
упрощенная модель
Курс SE MSF.NET
Метамодель UML 32
Обозначения
ProcessRole Activity WorkProduct
Курс SE MSF.NET
Метамодель UML 33
Курс SE MSF.NET
Метамодель UML 34
Структура SPEM
Курс SE MSF.NET
Метамодель UML 35
Структура SPEM
SPEM_Foundation • Подмножество метамодели стандартного UML SPEM_Extensions • Конструкции, специфичные для Software Process Engineering Курс SE MSF.NET
Метамодель UML 36
Два примера из SPEM_Foundation::Data_Types
Курс SE MSF.NET
Метамодель UML 37
Важные классы
WorkDefinition • Используется для описания некоторой деятельности, осуществляемой в рамках процесса (некоторой части процесса) • “Кусок работы”, который имеет явные входные и выходные параметры (WorkProducts) • Может содержать в себе другие WorkDefinition, образуя таким образом иерархию вложенных работ • Имеет следующие саб-классы: Activity, Phase, Iteration, Lifecycle WorkProduct • Любой продукт/артифакт, созданный, задействованный (использованный) либо модифицированный в рамках процесса. Это может быть некоторая информация, документ, модель, исходный код и т.п.
• WorkProduct может быть частью другого WorkProduct • WorkProduct может иметь состояния Курс SE MSF.NET
Метамодель UML 38
Важные классы
ProcessPerformer • Определяет исполнителя для множества WorkDefinitions в процессе. Предназначен для описания тех WorkDefinitions, которые сложно ассоциировать с индивидуальными ProcessRoles ProcessRole • Подкласс ProcessPerformer-а. Предназначен для описания ролей, ответственных за работу над конкретными WorkProducts и выполнение конкретных Activities Курс SE MSF.NET
Метамодель UML 39
Курс SE MSF.NET
Метамодель UML 40
Курс SE MSF.NET
Метамодель UML 41
Важные классы
Activity • Главный саб-класс WorkDefinition • Описывает часть работы, выполняемую индивидуальной ProcessRole • Может состоять из шагов (Step) Step • Атомарная единица работы • Steps предназначены для структурной декомпозиции Activity Курс SE MSF.NET
Метамодель UML 42
Курс SE MSF.NET
Метамодель UML 43
Теперь сводим все это вместе
См. раздаточные материалы Курс SE MSF.NET
Метамодель UML 44
Важные классы
ProcessComponent • Внутренне целостная и согласованная часть процесса, предназначенная для дальнейшего использования в качестве “строительного блока” для сборки полноценного процесса Process • Полноценный самостоятельный процесс, не предназначенный для дальнейшего использования в качестве саб-процесса Курс SE MSF.NET
Метамодель UML 45
Важный класс
Discipline • Специализация Package, предназначенная для группировки Activities, объединенных некоторой общей “темой” • Например, в RUP-2001 предусмотрено девять дисциплин: Business Modeling Requirement Management Analysis & Design Implementation Test Deployment Project Management Configuration and Change Management Environment Курс SE MSF.NET
Метамодель UML 46
Курс SE MSF.NET
Метамодель UML 47
Важные классы
Iteration • Композитная WorkDefinition, ведущая к достижению некоторой промежуточной цели Phase • Специализация WorkDefinition, характеризующаяся наличием критериев старта (Precondition) и завершения (Goal) • Фазы имеют заданный временной порядок следования LifeCycle • Жизненный цикл процесса – последовательность фаз, ведущая к достижению некоторой цели Курс SE MSF.NET
Метамодель UML 48
Важные классы
Precondition и Goal • Условия начала/завершения выполнения WorkDefinitions • Эти условия формулируются в терминах состояний тех WorkProducts, которые являются параметрами WorkDefinitions • Пример Precondition: (DesignModel имеет состояние Ready) and (DesignStandards имеет состояние Approved) • Пример Goal: (ReviewActions имеет состояние Drafted) Курс SE MSF.NET
Метамодель UML 49
Курс SE MSF.NET
Метамодель UML 50
Курс SE MSF.NET
Метамодель UML 51
Обозначения
Process ProcessPackage Document UML Model
Курс SE MSF.NET
Метамодель UML 52
Курс SE MSF.NET
Метамодель UML 53
Обозначения
Guidelines ProcessPerformer Phase WorkDefinition
Курс SE MSF.NET
Метамодель UML 54
Курс SE MSF.NET
Метамодель UML 55
Программные средства для моделирования SE процессов
Objecteering/UML
http://www.objecteering.com/
Enterprise Architect
http://www.sparxsystems.com.au/ Курс SE MSF.NET
Метамодель UML 56
Резюмируем
Метамодель UML – описание семантики языка UML на языке UML MOF – мета-метамодель SPEM – набор “строительных блоков” для конструирования производственных процессов программной инженерии Курс SE MSF.NET
Метамодель UML 57
Литература
OMG Unified Modeling Language Specification v 1.5 (англ.) • http://www.omg.org/technology/documents/formal/uml.htm
Software Process Engineering Metamodel Specification v 1.0 (англ.) • http://www.omg.org/technology/documents/formal/spem.htm
MetaObjectFacility(MOF) Specification v 1.4
• http://www.omg.org/technology/documents/formal/mof.htm
Курс SE MSF.NET
Метамодель UML 58
Учебный курс SE MSF.NET
создан творческим коллективом из 12 человек:
О.И.Белобородько, Н.И.Бойко, А.Г.Дубинский, С.В.Земляная, Е.В.Колесникова, Д.А.Маленко, И.В.Мозговая, В.Л.Павлов, А.Г.Пилипенко, К.В.Рундуев, О.В.Федоренко, А.Д.Фирсов
под руководством вице-президента Союза менеджеров Днепропетровска, технического директора корпорации eLine Software
В.Л.Павлова при спонсорской поддержке Союза менеджеров Днепропетровска СОЮЗ МЕНЕДЖЕРОВ
комментарии по поводу курса просьба направлять на e-mail: [email protected] Курс SE MSF.NET
Метамодель UML 59
Перед следующей лекцией...
Для облегчения восприятия материала следующей лекции студентам рекомендуется освежить в памяти информацию о … Курс SE MSF.NET
Метамодель UML 60
В качестве фона использовано изображение космического аппарата “
Океан-О
”. Такие спутники изготавливает расположенный в Днепропетровске завод
ЮМЗ
Курс SE MSF.NET
Метамодель UML 61