Що таке Ghost%?

Останнє оновлення 23 жовтня 2026 р.

Ghost% — незалежна оцінка DevGhost продуктивності розробника за змістом змін у Git та їхньою когнітивною складністю. Еталон — розробник середнього рівня, який знає проєкт і працює без ШІ. Стабільні результати допомагають виявляти низький внесок і сильних розробників. За 100% оцінений результат відповідає еталонному рівню після застосування вибраного способу підрахунку днів і Share; понад 100% — перевищує його. Оцінка описує внесок у код, а не всю професійну цінність людини.

Формула

Ghost% = E ÷ (D × 3 × S) × 100

Базовий рівень

E - оцінені зусилля у вибраному охопленні та періоді, в еталонних годинах, включно з розподіленим залишком. D - кількість днів розробника у вибраному режимі. S = Share ÷ 100: за Share = 100% значення S дорівнює 1. Стандартний базовий рівень Ghost - 3 еталонні години на день розробника. Це спільна основа для порівняння результату, а не тривалість усього робочого дня. Якщо інтерфейс дає змогу вибрати інший базовий рівень, використовуйте його замість 3. Для вихідного Ghost% використовується S = 1.

У режимі Spread D рахує дати з позитивними розподіленими зусиллями, включно з допустимими вихідними. День без комітів може враховуватися, якщо модель розмістила на ньому зусилля; день без розподілених зусиль не враховується, а сам лише коміт із нульовими зусиллями не додає дня Spread. Це змодельовані дати, а не спостережувані робочі дні.

У режимі FTE використовується проміжок активності розробника у вибраному охопленні: від першої дати із зусиллями до дати останнього коміту, включно з комітами з нульовими зусиллями. Він перетинається з вибраним періодом; рахуються будні, зокрема без комітів або зусиль, а також вихідні з позитивними зусиллями. У командних представленнях проміжок також може обмежуватися періодами участі в команді. У звітах із календарем працівника використовується окремий знаменник: доступні хвилини за налаштованим графіком, перевизначеннями дат і відсутностями, поділені на 480 хвилин повного робочого дня. У них застосовуються ті самі 3-годинна норма й поправка Share; стандартна кількість днів Spread/FTE не змінюється.

Що коригує Share

Share — частка від 0% до 100%, яку задають вручну; за замовчуванням 100%. Значення 100% означає звичайну повну роль розробника, а не вісім годин набору коду. 3-годинний базовий рівень уже залишає місце для звичайної некодової частини цієї ролі. Зменшуйте Share, якщо людина менше залучена до оцінюваної розробки, наприклад працює неповний час або має додаткові обов’язки; не віднімайте звичайну некодову частину дня вдруге.

Зусилля включають розуміння відповідного коду, проєктування рішення, реалізацію, самотестування та необхідні виправлення. Share не віднімає ці дії повторно. Окремі рев’ю чужої роботи, менторство, зустрічі та робота без сліду в аналізованому коді безпосередньо не вимірюються. Керівник задає поправку на контекст ролі.

Share змінює скоригований Ghost% діленням. Він не змінює оцінені зусилля, розподілену часову шкалу, вихідний Ghost%, кількість днів або вартість. За Share = 0% скоригований Ghost% недоступний, а не дорівнює нулю чи нескінченності. Якщо Share не визначено, результат також недоступний. Coding Share не пов’язаний з експериментальною часткою слідів ШІ, показаною в інших частинах продукту.

Приклади для окремих розробників

За стандартної норми E = 30 еталонних годин і D = 10 днів дають 100% при Share = 100%: 30 ÷ (10 × 3 × 1) × 100. За тих самих E і D, але Share = 50%, скоригований Ghost% дорівнює 200%, а вихідний Ghost% залишається 100%. За Share = 0% скоригований Ghost% недоступний, а 30 еталонних годин зберігаються.

Вибраний режим впливає на результат: 6 еталонних годин, розподілених на одну дату, дають 200% у режимі Spread. Якщо ця дата входить до проміжку FTE тривалістю 20 робочих днів, FTE Ghost% становить 10% за Share = 100%. Той самий результат у коді порівнюється з різною кількістю днів; жоден результат не відтворює фактичний робочий час.

Підсумки команди та репозиторію

Загальний Ghost% на дашборді й у публічних зведеннях репозиторію — це середньозважене за зусиллями індивідуальних відсотків: Σ(Eᵢ × Ghost%ᵢ) ÷ ΣEᵢ. У відсотку кожної людини вже враховано її кількість днів і Share. Це не загальні зусилля команди, поділені на 3, не об’єднаний показник на людино-день і не просте середнє за людьми. Читайте підсумок разом із вибраним охопленням і режимом.

Приклад: A має 30 еталонних годин за 10 днів (100%), а B — 15 за 10 днів (50%), в обох Share = 100%. Загальний середньозважений результат дорівнює (30 × 100 + 15 × 50) ÷ 45 = 83,33%. Якщо поділити їхні сумарні 45 годин на 20 людино-днів, а потім на 3, вийде 75% — це інша статистика. Якщо позитивні зусилля належать людині, для якої скоригований Ghost% недоступний, скоригований загальний результат також недоступний; учасники з нульовими зусиллями не додають ваги.

Розподіл зусиль у часі

Часова шкала - це модель можливого розподілу оцінених зусиль, а не спостереження за тим, коли виконувалася робота. Звичайний розподіл має спільну місткість 5 еталонних годин на людину на день для всіх репозиторіїв і email-псевдонімів в одному workspace. Коміти однієї дати групуються, а попередні розподіли займають цю місткість.

Поточне вікно розподілу містить 14 календарних дат: дату коміту та 13 попередніх дат, зокрема до першого коміту або вибраного звітного періоду. Дата коміту враховується навіть у вихідний; попередні суботи й неділі пропускаються. Залишок зберігається та враховується в розрахунковому розподілі в часі. Цей розрахований залишок не є спостережуваною понаднормовою роботою. Фільтри звіту вибирають дати, на які розподілено зусилля; зміна видимого періоду не переносить до нього всі зусилля коміту.

Місткість розподілу 5 годин і 3-годинний базовий рівень Ghost мають різне призначення. Місткість розміщує еталонні зусилля на часовій шкалі, а базовий рівень перетворює денний еталонний результат на відносну оцінку продуктивності. Жодне з цих чисел не відображає фактичний робочий день розробника. Дати інтерпретуються в часовому поясі проєкції. Старі workspace і збережені аналізи можуть зберігати попередню політику розподілу; ці параметри описують поточну політику.

Як це читати

Показані діапазони порівнюють результат із вибраним еталонним рівнем. Інтерпретуйте їх за стабільними тенденціями та з урахуванням ролі:

  • 120% і вище — вище еталонного рівня.
  • Від 100% до 120% — на рівні базового або вище.
  • Від 80% до 100% — трохи нижче базового рівня.
  • Нижче 80% — значно нижче базового рівня.

Що означає результат понад 100%

Результат понад 100% означає, що оцінений результат у коді перевищує базовий рівень для вибраного способу підрахунку днів і Share. Однією з причин може бути допомога ШІ, поряд із досвідом, інструментами та характером роботи. Сам по собі високий Ghost% не доводить використання ШІ, якість коду або вплив на бізнес.

Чим Ghost% не є

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

DevGhost використовує історію та зміни Git. Йому не потрібні облік часу, запис екрана чи реєстрація натискань клавіш.