Артефакт (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].

Примечания

  1. Буч, Рамбо, Якобсон, 2006, Строительные блоки UML, с. 35.
  2. Буч, Рамбо, Якобсон, 2006, Артефакты, с. 58—60.
  3. OMG UML, 2007, p. 197.
  4. Буч, Рамбо, Якобсон, 2006, Артефакты. Введение, с. 368.
  5. Буч, Рамбо, Якобсон, 2006, Артефакты и классы, с. 370—371.
  6. Буч, Якобсон, Рамбо, 2006, artifact (артефакт), с. 179.
  7. Буч, Рамбо, Якобсон, 2006, Виды артефактов, с. 371.
  8. Новиков, 2010.
  9. Буч, Якобсон, Рамбо, 2006, artifact (артефакт), с. 189.

Источники