Артефакт (UML)
Артефакт в языке моделирования UML — некая физическая сущность на уровне платформы реализации, представляющая собой замещаемую часть системы (программный скрипт, файл с исходным кодом, исполняемый модуль, таблица базы данных и т. п.)[1][2][3].
Описание
Многие операционные системы, средства разработки и языки программирования (например Microsoft .NET Framework) имеют встроенные средства поддержки артефактов. В системе обозначений UML артефакт представляется в виде прямоугольной пиктограммы с ключевым словом «артефакт», которое располагается над его именем. Наличие явно заданного имени — обязательный атрибут артефакта. Имя артефакта может быть как простым в виде текстовой строки, так и квалифицированным с уточнением в виде имени пакета, содержащего данный артефакт[4].
И классы, и артефакты являются классификаторами. В отличие от класса артефакт представляет из себя не абстрактный логический концепт, а реально существующий битовый объект, поэтому артефакт может быть развёрнут на узлах UML, а класс — нет. Классы содержат в себе атрибуты и операции, а артефакты — реализуют собой классы и методы, не имея ни атрибутов, ни операций[5][6].
Классификация артефактов
Как правило, артефакты подразделяются на[7]:
- Артефакты размещения (англ. deployment artifacts) — динамические библиотеки и исполняемые коды, классические и альтернативные объектные модели (.NET, CORBA, Enterprise Java Beans и т. п.)
- Артефакты рабочих продуктов (англ. work product artifacts) — результаты процесса разработки программного продукта, которые напрямую не участвуют в работе созданного приложения, но являются результатами разработки, например — файлы исходного кода и файлы данных, из которых создаются артефакты размещения.
- Артефакты исполнения (англ. execution artifacts), которые динамически возникают в ходе выполнения программного продукта, например — объекты .NET, которые генерируются из DLL.
Стандарт UML содержит в себе набор стереотипов, которые можно использовать для представления основных видов из всего разнообразия артефактов (файлы, документы, библиотеки, скрипты и т. п.)[8] Стандартными стереотипами, типичными для артефактов, являются source и executable[9].
Примечания
- Буч, Рамбо, Якобсон, 2006, Строительные блоки UML, с. 35.
- Буч, Рамбо, Якобсон, 2006, Артефакты, с. 58—60.
- OMG UML, 2007, p. 197.
- Буч, Рамбо, Якобсон, 2006, Артефакты. Введение, с. 368.
- Буч, Рамбо, Якобсон, 2006, Артефакты и классы, с. 370—371.
- Буч, Якобсон, Рамбо, 2006, artifact (артефакт), с. 179.
- Буч, Рамбо, Якобсон, 2006, Виды артефактов, с. 371.
- Новиков, 2010.
- Буч, Якобсон, Рамбо, 2006, artifact (артефакт), с. 189.
Источники
- Г. Буч, Д. Рамбо, И. Якобсон. Язык UML. Руководство пользователя = The Unified Modeling Language Usere Guide. — 2-е. — М. : ДМК Пресс, 2006. — 496 с. — ISBN 5-94074-334-X.
- Г. Буч, А. Якобсон, Д. Рамбо,. UML. Классика CS = The Unified Modeling Language Reference Manual. — 2-е. — СПб. : «Питер», 2006. — 736 с. — ISBN 5-469-00599-2.
- Ф. Новиков, Д. Иванов. 3.4. Диаграммы реализации // Моделирование на UML. Теория, практика, видеокурс.. — СПб. : Профессиональная литература, 2010.
- 10.3.1 Artifact (from Artifacts, Nodes) // OMG Unified Modeling Language (OMG UML), Superstructure, V2.1.2. — Object Management Group, Inc., 2007. — P. 197.