MVP, мінімально життєздатний продукт (англ. Minimum viable product — MVP) — продукт з мінімальним функціоналом, який можна дати користувачам для використання. Використовується для тестування ідей у розробці програм з мінімальними затратами ресурсів. Зазвичай реалізується шляхом вдалого планування релізів, коли у перший реліз входять лише основні функції (або одна найважливіша), що дає можливість користувачам уже почати працювати, не очікуючи остаточної версії і які потім можуть надати зворотний зв'язок для подальшого розвитку продукту – (за даними Wikipedia).
Завдання визначення функціональності MVP з'являється на етапі планування розробки продукту і часто вимагає оновлення планів в міру розвитку продукту, аж до кінця розробки MVP.
Сама концепція MVP передбачає максимально швидку доставку продукту кінцевим користувачам, щоб отримати від них зворотній зв'язок, але власники продукту часто перевищують мінімальний функціонал, прагнучі зробити продукт кращим, що призводить до зриву термінів, перевищення бюджетів, а в найгірших випадках - навіть до розвитку продукту в неправильному напрямку.
Для мінімізації вищезазначених ризиків запропоновано використовувати специфічний підхід, заснований на математичних принципах, для регулювання процесу визначення функціональності MVP.
Критеріями для завдання визначення MVP функціональності є критерії, взяті з методології WSJF, а також додаткова декомпозиція Job Duration на складові:
Оцінка проводиться за допомогою числових рядів Фіббоначі від 1 до 21. (1, 3, 5, 8, 13, 21). Цей метод оцінки є універсальним з точки зору його використання при оцінці завдань в Story Points при плануванні, а також можливе використання Scrum-poker для групової оцінки критеріїв.
Також оцінка ряду Фіббоначі пов'язана з тим, що кожен крок значень не збільшується лінійно, а це означає, що складніше буде скласти все в одну оцінку. Також можна відчути варіацію, наприклад, відразу видно різницю в цінності бізнесу між завданням 3 і 21 Story Points.
Оцінки за критеріями з групи Jobs Duration виконуються командою розробників, а оцінки для групи критеріїв Cost Of Delay виконуються тільки із залученням бізнес-замовника і Власника продукту.
Результатом оцінювання буде матриця наступного вигляду:
| Назва Features | User Business Value | Time criticality | Risk Reduction | Opportunity Enablement | Job Duration | Job Complexity | Job Cost |
| Feature1 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 |
| Feature2 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 |
| Feature3 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 |
| FeatureN | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 |
Багатокритеріальна оптимізація (англ. Multi-objective optimization) - це процес одночасної оптимізації двох або більше конфліктуючих цільових функцій в заданій області визначення. Найпростішим способом розв'язання задачі багатокритеріальної оптимізації є метод згортання критеріїв, що дозволяє звести багатокритеріальну оптимізацію до однокритеріальної. Метод згортання критеріїв передбачає перетворення набору існуючих часткових критеріїв в один суперкритерій. Тобто ми отримуємо новий суперкритерій, який є функцією конкретних критеріїв.
Щоб згорнути критерії в суперкритерій, необхідно також поставити вагові коефіцієнти:
| Ваговий коеф-т | K11 | K12 | K13 | K14 | K21 | K22 |
| Назва Features | User Business Value | Time criticality | Risk Reduction | Opprtunity Enablement | Job Duration | Job Complexity |
| Feature1 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 |
| Feature2 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 |
| Feature3 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 |
| FeatureN | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 | 1...21 |
Для бізнес-критеріїв і критеріїв розвитку необхідно встановити окремі вагові коефіцієнти.
Таким чином, згорнутий критерій буде виглядати так:
Cost Of Delay = User-Business Valuek11+ Time Criticalityk12+ Risk Reductionk13+ Opportunity Enablementk14;
Jobs Duration = Job Durationk21+ Job Complexityk22+ Job Cost*k23;
K11+K12+K13+K14=1;
K21+K22+K23=1;
Загальний критерій оптимізації (Mutual Criteria) = Cost of Delay/Jobs Duration.
Таким чином, ми отримаємо матрицю наступного вигляду:
| Назва Features | Mutual Criteria |
| Feature1 | MC1 |
| Feature2 | MC2 |
| Feature3 | MC3 |
| FeatureN | MCN |
Результуючою цільовою функцією є максимізація за Mutual Criteria.
АВС-аналіз - це метод, який дозволяє класифікувати завдання за їх важливістю. Даний аналіз є одним з методів раціоналізації і може бути застосований в сфері діяльності будь-якого підприємства. В її основі лежить принцип Парето – 20% всіх зусиль дають 80% результату. Згідно АВС-аналізу правило Парето може звучати так: 20% функціоналу дозволяє покрити 80% потреб користувача.
АВС-аналіз – це аналіз Backlog (набору Features) шляхом поділу його на три категорії:
А — найцінніший, 20% — від кількості; 80% — задоволення потреб
В — проміжна, 30% — кількість; 15% — задоволення потреб
С — найменш цінна, 50% — кількість; 5% – задоволення потреб
Група А – це група функціональності, яка і є наповненням MVP.
По суті, АВС-аналіз – це ранжування Backlog за різними параметрами. Результатом АВС-аналізу є угруповання об'єктів за ступенем впливу на загальний результат.
АВС-аналіз заснований на принципі дисбалансу, який будує графік залежності кумулятивного ефекту від кількості елементів. Такий графік називається кривою Парето, кривою Лоренца або кривою АВС. Таким чином, 20% функціоналу покриває 80% потреб. Виходячи з цього принципу, ми виконуємо АВС-аналіз для Backlog для визначення MVP.
Для цього:
Важливе зауваження: необхідно враховувати функціональність CORE. Група «А» може збігатися з CORE, але в разі незбігу результати АВС-аналізу повинні бути доповнені функціональністю Core.
CORE – функціональність – це основа функціонування продукту, яка складається з функціональних можливостей, без яких неможливе функціонування продукту. (Наприклад, авторизації).
Використання цієї методології для визначення набору Features для MVP забезпечує обґрунтований вибір раціональної кількості завдань, необхідних для якнайшвидшого завершення MVP.