Що означає артефакт?


57

Словник визначає артефакт як:

артефакт, артефакт [ˈɑːtɪˌfækt] н

  1. щось, зроблене або наділене формою людиною, наприклад, інструмент чи твір мистецтва, є предметом археологічного інтересу

  2. що-небудь штучне, наприклад, хибний експериментальний результат

  3. (Науки про життя та суміжні програми / Біологія) Цитологія будови, що спостерігається в тканинах після смерті, фіксації, фарбування тощо, яка зазвичай не присутня в живій тканині

Слово artifactчасто з'являється в розробці програмного забезпечення, циклах розробки програмного забезпечення, оцінці зусиль тощо. Але вищенаведене визначення для мене не має сенсу в цьому контексті.

Невже хтось може пояснити це слово, подавши конкретні приклади з індустрії програмного забезпечення?


2
p2pnode очевидно не вимагає визначення слова "артефакт". Це питання, врешті-решт. Питання про те, як слово використовується в контексті програмування, може бути основним питанням, але це все ще на тему.
Адам Лір

Слово не в процесі розробки програмного забезпечення - занадто широке і неглибоке. Він створює зображення археологічних розкопок; горщики та черепки.

@Robster, чому ти це кажеш? Я чув, що він посилався на створення та тестування артефактів (dlls та результати тестів). Це здається досить поширеним і досить специфічним.
MetaFight

Ну, схоже, ви можете назвати артефактом все, що створюється або створюється під час програмування або після його виконання.
TheLegendaryCopyCoder

Відповіді:


66

У життєвому циклі розробки програмного забезпечення (SDLC) артефакт зазвичай відноситься до "речей", які виробляються людьми, які беруть участь у процесі. Прикладами можуть бути проектні документи, моделі даних, діаграми робочого процесу, тестові матриці та плани, сценарії налаштування, ... як археологічний сайт, будь-яка річ, що створюється, може бути артефактом.

У більшості циклів розробки програмного забезпечення зазвичай є список необхідних артефактів, які хтось повинен створити та розмістити на спільному диску або сховищі документів, щоб інші люди могли переглядати та ділитися ними.


2
Дійсно, єдине, про що я ніколи не чув, як артефакт - це код, але я не бачу, чому код не може бути артефактом.
Томас Оуенс

2
@Thomas Owens: Код може бути і артефактом, але його зазвичай розглядають окремо (як у "переконайтесь, що ви створили резервну копію коду та артефактів!"), Оскільки єдиний, хто цікавиться цим артефактом, - це кодери, а іноді й архітектори. Крім того, код переходить до контролю джерел, більшість інших артефактів повинні перейти в сховище документів або у Wiki.
FrustratedWithFormsDesigner

9
Артефакти також можуть включати складені бінарні файли / пакети програм.
Енді

На насправді в світі Java дуже часто для позначення коду , як артефакт, наприклад , при використанні Maven: stackoverflow.com/questions/2487485/what-is-maven-artifact
raspacorp

Найбільше, що я чув, що я використовував, це стосується створених фрагментів коду або бінарних файлів.
Qix

23

Я думаю, що ця стаття у Вікіпедії досить добре висвітлює її.

Артефакт - це один із багатьох видів матеріального побічного продукту, що утворюється під час розробки програмного забезпечення. Деякі артефакти (наприклад, випадки використання, діаграми класів та інші моделі UML, вимоги та конструкторські документи) допомагають описати функцію, архітектуру та дизайн програмного забезпечення. Інші артефакти стосуються самого процесу розробки - такі як плани проектів, бізнес-кейси та оцінки ризиків.


14

У графічному програмуванні його часто використовують для посилання на частину зображення, яка не відображається правильно. Наприклад, якщо після завершення малювання невеликий фрагмент попереднього кадру чи виду залишається на екрані, це буде називатися артефактом.


1
Оскільки я займаюся графічним програмуванням, саме для мене це найчастіше приходить сенс, але це не пов'язане зі значенням, про яке запитували ОП (що означає цей термін у контексті програмного планування).
поштовх

4
ОП запитала: "Чи не могли б хто-небудь пояснити це слово, наводячи конкретні приклади з індустрії програмного забезпечення ?", Що, на мою думку, включає мою відповідь.
GrandmasterB

Просто хотілося додати зауваження, що слово "артефакт" в цьому контексті використовується більш загально, ніж просто в графічному програмуванні, щоб позначати аномалії візуалізації в будь-якому типі генерованого зображення (наприклад, рентгенівське) - див .: en.wikipedia.org/ wiki / Visual_artifact
yoniLavi

5

Артефакт - це те, що створюється прямо чи опосередковано як наслідок чогось іншого створеного. Артефакти програмного забезпечення можуть складатися з вашого джерела проекту або ресурсів, або вони можуть бути представлені як непередбачені прояви взаємодій між вашими джерелами чи ресурсами.


4

Слово артефакт часто використовується стосовно сертифікатів управління якістю, таких як CMMI та ISO 9001 , та таких методологій, як Six Sigma . У цьому контексті артефакт відноситься до продуктів та побічних продуктів процесу розробки програмного забезпечення.

Артефакти збираються та архівуються протягом усього процесу, щоб використовуватись як доказ того, що задокументований процес дотримується. Такі артефакти в основному корисні під час аудиту сертифікації, але збирання та архівування їх також полегшує з'ясування того, як і чому процес не вдався, якщо виникнуть проблеми.

Артефакти також можуть бути виміряні та проаналізовані, щоб знайти шляхи вдосконалення процесу, ще більше виміряти, щоб показати підтвердження покращення, а потім постійно вимірюватись після цього, щоб показати, що процес залишається під контролем (тобто показники, про які йдеться, залишаються в певних межах) .


3

Я думаю, що існують і інші способи використання цього терміна, які означають більше як побічний ефект, але головне використання я вбачаю слово "артефакт" в межах програмної індустрії - означати "продукт, який створюється". Отже, як, наприклад, програма, яку розробники пишуть, - це "програмний артефакт".


Я чув, що він використовувався для позначення даних, які насправді вже не потрібні, але свого часу були таким чином артефактом застарілого додатка.
SoylentGray

3

Я чув лише артефакт, використаний в одному проекті, над яким я працював: ми використовували його для позначення файлів, які випускали. Однак, читаючи інші відповіді, здається, що «Артефакт» - це змінний термін, який використовується, коли комусь потрібен термін для певного типу об'єкта.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.